Bon Appetit teams up with IBM’s Watson for some great summer recipes, like these ribs



The story of IBM and Bon Appetit
is really interesting to me, since I love food and I am proud of the work IBM is doing with Watson. Anyone interested in the topic of innovation in IT or food should find it worth a read.

For people who aren’t interested in the high tech aspect of it, check out the recipes. In particular, these ribs with a range of flavours from bourbon to oyster sauce look fantastic.

The significance of cloud computing, as explained by the great Stephen Fry (@stephenfry)

This is a really well done video on the importance of cloud computing. It’s 5 minutes long, and well worth it.

Obviously, I would argue that your best bet for Cloud Computing services is from the company I work for, but otherwise I highly recommend this.

How to learn github fairly easily

It is easy to feel stupid if you are trying to learn how to use github and you are not a software developer. Many of the github tutorials are aimed at people who are software developers and who have used similar tools. What can seem obvious to them can seem bafflingly to you when you are trying to understand the workings of github. (e.g., if you are not used to source control, then getting your mind around what state your file can be in at any given time in the process can be confusing.)

Despite that, if you are committed to learn how to use Github and git (the basis for Github), I recommend you take the next four steps:

  1. Start with this two part tutorial: GitHub For Beginners: Don’t Get Scared, Get Started – ReadWrite (part 1) and GitHub For Beginners: Commit, Push And Go – ReadWrite. I really liked this series. It assumes that you aren’t a software developer and that you may have tried using github and gave up. I highly recommend you take an hour and walk through both parts of this tutorial. When you are done, you will have feel that you have a good start on being able to use git.
  2. If you still feel like you want some more practice and you want to try some new things with git in a safe environment, try this interactive tutorial: Code School – Try Git. It will also teach you some additional things that you will find useful that you didn’t learn in step 1.
  3. Now that you are more comfortable with git and github, this Git Reference site walks you some of the same material, but goes into detail and explains it more. By the time you go through this, you should be alot more confident about what you are doing with git and github.
  4. Lastly, I like this site:  git – the simple guide – no deep s–t! (It’s where the graphic at the top of this post comes from). It’s a great summary of the things that you’ve learned, and it has an excellent cheat sheet on the top left of the page that you will want to keep handy.

Some additional thoughts: your use of git and github can be as simple or as complicated as you want it to be. You could have a simple repo on github with one or more files that only you use. Later, you could start cloning other people’s repos, making changes, and making them into your own repo. From there you could get into working with teams of people, branching and merging your files as you go. During that time, you are learning as you go. Don’t be afraid to a) make backups and then b) make mistakes. Eventually you will gain mastery of it and be able to use it to your full advantage. Better still, the material you share can be used by others, and that’s a great thing.

 

Do you have a PC with no security? Do you have no money? Then you need this

Specifically, start here, with Microsoft Security Essentials for Microsoft Windows.

I haven’t downloaded this, but it comes from Microsoft and you will be much better off getting this from them then from some other vendor (or worse, from some site you aren’t sure of.)

I recommend this especially for people who are nervous about such things but don’t know what to do next.

Should everyone learn to code? And should they learn it from Code.org?

I am encouraged by organizations like code.org and the work they are doing to help kids (and adults) learn how to write code using an approach that is condusive to fast learning. You can see their work here: Learn | Code.org. A somewhat differing point of view is here: Thread: Why you should learn to code.  I say “somewhat” because while Winer agrees with the notion of more people coding, he disagrees with how this is being promoted by code.org.

I think there are lots of reasons to learn to code: it’s a creative activity, it helps you understand technology better, it can help you get ahead in life, and it can be fun. I don’t think everyone has to learn to code, just like everyone doesn’t have to learn to sing or draw or other creative tasks. People may be anxious about their kids being computer illerate, but that fear has been around since the early days of personal computers and it was always an overblown fear. Learn to code for the goodness it brings, not because you fear something if you don’t learn.

Need a cheap domain? Namecheap.com has some good deals right now

Right now, Namecheap.com has .us domains for $1.10 (Canadian) and .org.uk for $6.41.

I was tempted to get iAmSoFabulo.us, but I may get something just for test purposes. (I am testing using cloud sites, and it is helpful to have a domain name, vs going with the full domain name that some of the cloud sites provide).

If you are Canadian or want a .ca domain, then netfirms.ca is a better choice (NameCheap.com has .ca domains for $13.03, vs $9.99 at netfirms.ca).

Finally, from what I hear, namecheap.com has deals all the time. It is worth visiting them from time to time to see what is available.

How to program, as explained by Samuel Jackson :)

Well, not exactly. But this website: Programming, M—–f—– – Do you speak it? is a very expletive laden and funny site for any of you programmers out there, from n00bie to experienced. Click on this especially for some great links to help you with your programming skills. 

Also not your average software development T shirts are on sale there, if you are so inclined.

Hack: Facebook’s version of PHP, now for everyone (#technical)

It’s not news that Facebook has been running a modified version of PHP for some time. What is news is that now so can you.

You can get a copy of it at this website:Hack. It installs on most OSs (or will, soon), and even runs in the Cloud (on Heroku).

According to this, Facebook Introduces ‘Hack,’ the Programming Language of the Future | Wired Enterprise | Wired.com, what you get is a high performing version of PHP with very little you have to change to get the performance gains.

It will be interesting to see if this helps to drive up usage in PHP. There are lots of new technologies to build web site with these days: this could make PHP a desirable option.

Is Agile dead?

For people who work in software development, I recommend this article: The End of Agile: Death by Over-Simplification | Effective Software Design. It pushes back against what Agile is becoming. It also has some great links to others complaining about what Agile has become, including this, which I really like: The Anti Agile Manifesto | On the obfuscation of common sense in the software development community.

My belief is that there is a wide range of people using the term “agile”. Some of those people have alot of experience doing software development and can use it to create much better software. And then there are other people who use the term vaguely in order to sound intelligent and flexible. If you want to be more like the former and would like to know more about Agile, here’s a good place to start: Agile software development – Wikipedia, the free encyclopedia

I don’t think it is dead: but I do think it needs resuscitation.

 

Some thoughts on setting up Thunderbird, the email client from Mozilla. (Hint: I recommend it.)

If you are struggling with managing multiple email user accounts, or having difficulty with the user interfaces of web based email accounts, then you should consider using Thunderbird. (Plus, frankly, the ads that Yahoo! puts on their web site are awful and embarrassing.)

Thunderbird comes from Mozilla, the same people that bring us Firefox. I tried using it years ago, but the integration with Yahoo! mail and Gmail seemed more difficult at that time. This time, it was fairly simple.

You download and install Thunderbird from here. Once you do, select the option to create new accounts. I wanted to set it up with my Yahoo! and Gmail accounts, and to do this all I needed to do was provide my name, userid and password, and Thunderbird set up the rest. (If I recall, one time you needed to have the SMTP/POP settings, etc., but now Thunderbird figures out all that at least for Gmail and Yahoo! You may need to do more work if your email comes from your ISP, but that should be straightforward information to acquire.)

I would like to hear your feedback, but it was a simple process for me. Two problems I did have, though, that you should be aware of:

  • Spam! With Yahoo! mail, if you have a free account, it will download your spam as well as your regular mail. This is something I discovered as I clicked on Get Mail. I went and cleared my spam (which was being downloaded) and then it was fine. If you have a paid account, there is apparently an option to prevent this from happening. (More information on this here.)
  • 2 factor authentication. With Gmail, I had two factor authentication turned on. If you do too, you will need to generate a special password in order for Thunderbird. (More information on that here.)

Having a problem with a USB or SD drive? Use SDFormatter to format and reset it

If you have a new SD card, using the tool SDFormatter makes sense.

However, if you are having a problem with an old SD card or USB drive, it also can help you.

I was trying to install Chrome OS on my SD drive and USB drives using tools unetbootin and win32diskimager. These tools would burn the files to the drive without difficulty. But later, when I wanted to use them, Windows 7 would only recognize 1 GB of space, despite them both being much bigger (4 GB and 8 GB). Typical Windows formatting didn’t help.

I tried SDFormatter on the SD drive first. That worked great. I decided to try it on the USB drive. That worked too! Very quick, and the drives were reformatted and restored to their proper size! Whew. I successfully tested putting a file on each one as well.

It’s a great little tool. I recommend it to help you deal with flash memory.

Some thoughts on the infancy of the Web, on it’s 25th birthday

The web is 25 years old, and I have been using it since the very beginning. For those of you that haven’t — and those feeling nostalgic — here are some fun facts about the early days of the World Wide Web:

  • Before the web, there was just the Internet. And the Internet consisted of various services, from e-mail (of course) to Gopher to ftp to WAIS to news groups/Usenet, etc. It was all great, but then the World Wide Web sprung into action and the browser quickly became THE tool for using the Internet (save email). I wonder if anyone under 30 has even heard of any of those other services, let along use any of them?
  • In the beginning, most people couldn’t access the Web or even the Internet. Most people’s PCs had Windows, and Windows didn’t come with software to connect to the Internet. I was using OS/2 at the time – Really! – and OS/2 did provide a “TCP/IP stack” that allowed you to connect. You could buy a Stack and install it on your Windows machine, and eventually Microsoft bundled it with Windows. When that happened, Internet access took off.
  • To access the Internet, everyone had a dial up modem, with U.S. Robotics making some of the finest ones at the time. Web pages had to be designed to be very small, because every byte delivered by modem had to count.
  • The mid to late 90s was an exciting time to be on the Internet. The web, access to the Internet via new software, ISPs, and email all hit most people at about the same time. Things changed so quickly, the notion of a “web year” (3 months) came about.
  • In the early days, there were a range of browsers, from Mosaic to Viola to the one from IBM called Web Explorer. Then came Netscape and then Internet Explorer. It was along time before Firefox and Safari came along to challenge IE.
  • The “www.” part was important at first when you were using the Web. You could type “www.ibm.com” or “ftp.ibm.com” or “some other protocol.ibm.com” and your browser and the server would figure out what you wanted. It wasn’t assumed you were going to a web site Likewise, you could type “ibm.com:80” to go the web server. Eventually , the only thing that people wanted was their browser to talk to the web server, and the “www.” and the “:80” became superflous.
  • Server technology was very expensive at first. Netscape’s web server came with nice bells and whistles and cost about $10,000 for some form of that. Then Apache came along with their web server and essentially obliterated the web server software market.
  • Yahoo! was a big thing in the beginning. I actually tried to do a Canadian version of it. FYI: you cannot hand craft your own Yahoo! It’s like an artisanal Google. Needless to say, I abandoned that idea soon and left it to the professionals. I was involved with the early development of IBM’s global presence on the web.
  • Early web pages seem ugly now, but at the time they were amazing. You didn’t have to type in a bunch of commands to access information, like you did with FTP. You could type in one thing and just point and click, and each click brought up new information or played audio files or played video files! All of that was simply amazing.
  • The moment I thought the web was going to be big was when paintings from the Louvre went online. I thought: this isn’t just for technical people: any one can do this.
  • In the early days of the Web, there were two big concerns. One was doing commerce on the web. Companies were cautioned to be very discreet about selling things: otherwise the hard core Internet people would make a big stink and make life difficult for you. The second big concern was that the Internet backbone in the United States would get broken up or underfunded or somehow messed up and that this would inhibit the health of the Internet. This was a really big concern. The Internet has always been in various states of precariousness, and the recent threats to net neutrality are part of an ongoing story.
  • Speaking of net neutrality, there have always been special connections between major sites and major ISPs. In the early days it was from big sites like AOL connecting directly to big ISPs. Now it is Netflix who is making the deals. The more things change… 🙂

Happy birthday, World Wide Web, you great information superhighway! May you be around for 25 more!

My assessment of the assessments of Healthcare.gov

From Paul Krugman (Obamacare Success – NYTimes.com) to Ezra Klein (Ezra Klein: Thus Far, Obamacare a ‘Big Failure’ | National Review Online) to the NYtimes (From the Start, Signs of Trouble at Health Portal – NYTimes.com) to Alex Howard at BuzzFeed (How The First Internet President Produced The Government’s Biggest, Highest-Stakes Internet Failure) there has been more and more assessments coming in for healthcare.gov, and most of them have been negative. How good are these assessments?

I would argue that at this point, the assessments of healthcare.gov are of limited value. For example, the NYTimes.com article has a good run down on the background of the project and the politics involved, but the analysis of the system is mostly based on insider and second hand information. The Buzzfeed article has a great analysis of the challenges of IT procurement in the U.S. government, but again, it doesn’t deal directly with the system itself in question. That doesn’t mean those stories are bad, for there is alot of interesting background information in them. But it doesn’t tell you much about the actual system that makes up healthcare.gov.

There have been some good attempts at an assessment from an IT perspective from the CTO of Huffington Post (Why The Experts Are Probably Wrong About The Healthcare.gov Crack-Up | John Pavley), Paul Smith over at TPM (A Programmer’s Perspective On Healthcare.gov And ACA Marketplaces), as well as from individual bloggers with IT knowledge (e.g., Too Big To Succeed and Is There A Problem Here?). Someone wanting a better idea of the technology and the design of the system would be better off reading those.

In all cases, the individuals doing these assessments have very little to work with. A proper assessment of an IT system can take a team weeks if not months with full access to the system and all the artifacts and deliverables that went into making the system. Most of the assessments I have read so far have been based on having little if any data and few if any artifacts. This isn’t a criticism of the assessors: it’s all they have to work with. (The only fault I see is with some assessors displaying slight arrogance in thinking they have nailed it in their assessment as to what is wrong with the system.)

Given the little to go with, the people who are assessing the system a success or a failure are basing it on a number of assumptions that they have which may or may not be true. I don’t see much value in those assumptions. For example, most of the assessments I have read so far seem to assume the system should be up and running with few problems, given the importance of this site and the money invested in it. (Klein in particular seems to be certain of how an IT project should go, which I find remarkable in someone with an non-IT background like his.) There is nothing wrong with that assumption, but that’s all it is. You may think it is a valid assumption, but that is besides the point.

At this point in time, the only ones that can assess if the project is a success or a failure are the key stakeholders for the project. If you are someone who could never get healthcare because of preexisting conditions and now, even with difficulty, you are able register for a get healthcare, you likely consider the site a success. Conversely, if you are an insurer who expected to get alot of applicants from the site and are getting none, you may consider the site a failure. Right now it is too early to weigh any of that: it will take time and further analysis.

The government seems to have a longer term view of the site than most of the analysts that I have seen so far.  As the NYTimes.com story says, “Administration officials have said there is plenty of time to resolve the problems before the mid-December deadline to sign up for coverage that begins Jan. 1 and the March 31 deadline for coverage that starts later”. There is actually some benefit in launching the site now, well in advance of the December deadline. Sites with deadlines often experience the most traffic around the time of the deadline, and I expect healthcare.gov will be no exception. They have two months to resolve performance issues, better model usage patterns, fix critical bugs in the software, enhance the infrastructure, and improve the integration with other systems. Two months is a short timeframe, but it is feasible that they can resolve many of the obvious problems that the site is suffering now. As well, the proponents of the site should have enough data and analysis of the data to argue the success of the site.

Regardless of how the site is perceived then, anyone doing these assessments should have alot more to work with. In the future, if you are reading future assessments of the sites, things to consider are:

  • how much information about the site is the writer using in the assessment? More is better. Skip the ones based solely on anecdotes, or that ignores key stakeholders.
  • what is the criteria the writer is using for determine whether or not the site is successful? Is that criteria a valid one? Comparing it to other government or large scale commercial IT project is a good criteria. Comparing it to the roll-out of the latest iPhone is a poor one.
  • is the writer assessing the IT aspects of the site? How much IT experience does the writer have? You don’t have to be an IT expert to write about IT, but if you are talking about IT, you should have a basis for why your analysis is valid. If you are saying the architecture is faulty, you should be able to represent the architecture diagrammatically and say the architecture is faulty at points A, B, and C and here are the reasons why.

I am excited to see people discussing IT architecture with general audiences. I have been building and assessing IT architectures for decades, and it is a topic dear to me. I also know it is hard to assess the validity of what people are saying about it. That’s why I decided to write this. I appreciate any constructive feedback, and I will try and answer any that I receive.

(The above Flow Chart: How Health Insurance Exchanges Work is a representation of a health insurance exchange. I’ve included it to represent the complexity of any IT system that has to provide this type of capability.)

There’s alot of crappy advice on how to make Minecraft run faster. This isn’t

I reviewed alot of online material to help make Minecraft run faster on my son’s laptop. Much of it was YouTube videos made by nice kids, but most of it was less than helpful. However there was one thing I can across that was actually very useful, and it was this: 25 things you can do to make MineCraft run faster! FULL REDUX!!! Minecraft Blog.

I did most of these things, save put a cat on my son’s laptop, and they made a noticeable improvement in the speed of minecraft on his machine. The more of them you can do, starting from the top, the better  improvements you will see. Highly recommended.

My latest technical paper on Cloud Architecture is here on developerWorks #geekish

The paper, Select the correct cloud adoption pattern, was co-written with a very talented IBMer, Tina Abdollah.

As cloud architectures get more complex, patterns can help cloud architects communicate what is needed. If you are looking to develop more complex cloud architectures, take a look at the paper and see if it helps. Thanks.

 

 

The Future is Physical: how the Internet of the future — including supply chain, manufacturing, and commerce — is physical and robotic (more thoughts on drones)

First, a couple of paragraphs of background. While I have written a little about drones, John Robb has a blog called Global Guerrillas where he writes alot about it and other topics. Well worth reading. In his blog he talks about something called Dronet (Drone Net) and it got me thinking about the idea of a network of drones and how it will interact with what we think of as the Internet.

That said, I expect there will be resistance to the idea of Drone Net. I also think even if it is built, it will pivot away from drones and warfare to something bigger and broader, just like the Internet pivoted away from ARPAnet to something bigger and broader. Drone Net will just be a part, a small part, of a newer and bigger Internet.

That brings me to the subject of this post: the next Internet.

This new and bigger Internet will be physical. It won’t be focused on just being threatening or military. It won’t be Skynet or Dronet.  It will be called something neutral like Courier-Net or ExpressNet or simply the Net. Just like Apple evolves a device but keeps the same name, we too will do the same thing with the Internet.

Some of the ways the new drone enabled Internet will work are:

    • instead of businesses and other institutions shipping good and services via trucks and planes, they will send them via this new Net. Part of the new Net will be a network of thousands or millions of drones continually in motion. All supply chains will merge into the Internet. People will order Things, and the Internet will route drones to get those Things to People.
    • Instead of business manufacturing parts and goods in a factory, they will print them with 2D or 3D printers or maybe even bio-printers. (Iimagine printing something that looks like and tastes like and has the nutrients of an apple, but not an apple). Robots will do any pre and post work with the printed devices and then have them delivered to you via a drone. Non-manufactured goods (e.g. antiques) will be selected and packaged with a combination of people and robots.
    • You may have these printers at home for small things, just like you do now. But over time, there will be advantages to centralization of these facilities, so they will be centralized, though not necessarily in factories. There may be showrooms to convince you of the need of the product, with big printers in the back. Or they may be underground, part of our infrastructure, delivering up the goods we want, much like our current infrastructure delivers water and electricity and gas to us now.
    • People will have their own drones that are part of the new Net. For example, you may have a self driving car (which is merely a drone) that is connected to the Internet. It will figure out the best way to get your from A to B, just like Google Maps does now. Other drones will clean your house. (You have a bunch right now and you call them Appliances, not drones. Appliances are drones that are not very smart, aren’t connected to the Internet, and don’t move around.) Other drones will get rid of rodents and other pests (up to and including other drones). There will be entertainment drones, security drones, maintainance drones, drones you can’t even imagine having yet, though you will. (Teeth cleaning drones, for example.)
    • Drones will be relatively cheap. Look at your smartphone now. Think about how fast and better they have gotten even as they have become cheaper. That will be the case with drones. You will have butler drones to help you manage your drones.
    • IT companies always need new IT things to sell to you. Those things will be drones.
    • Just like you have appliances, in the future, you will just have drones. Unlike your current appliances, they will not stay in one place. They may not even stay in your house all the time (any more than your smartphone or your laptop stays in your house).
    • These drones will be part of the Net. Already Belkin makes switches that you can turn off and on from the Internet. This will soon be the case for all appliances. You will use a “remote” to talk to these devices, instead of the limited panels they have now. Or you will talk to a butler drone that does the rest.
    • Drones will be made attractive to people. Ever wish, after making a meal, that the kitchen would clean itself? Drones will do that. Ever wish someone would wash and fold and put away the laundry? Drones will do that. Put the cat or dog in and out? Wash the windows of your house? Paint a room? Drones will do all these things. People will ask: how did people ever live without drones in the same way people ask: how did we ever live without the Internet? Instead of asking Siri for the weather, you will ask Siri to make a soup for lunch.
    • Everyone will have drones, because drones will be everywhere. What will separate rich and poor people is how many powerful drones they can get at a moments notice. Everyone may have small drones, but not everyone will have a drone squadron that can build a 10 story building. (And yes, they won’t be called a Drone Army….it will be a more pacifistic term like Drone Squad or Robot Crew or Android Team.)
    • Speaking of Android, Google has shown how to market robots to be cute and attractive (just think of the robot mascot for Android). I would not be surprised to see a company that has brand names like Android and Nexus making drones soon. I expect no less from Apple and other IT companies.
    • Think of a thing you want to do. Drones will be capable of doing that for you. That’s the future of the Internet. That’s your future, too.
    • I used to think the future was Digital. Now I think the future is Physical.

a nice reminder to backup your files

My computer is toast. Specifically there appears to be a problem with either Windows XP or the file system where Windows resides. Regardless, it is likely going to mean a lot of restoring of files or at least moving them.

Ask yourself; if my computer stopped working right now, do you have a copy of the most important files on my computer? Do I even know which files are important? Have you tested restoring those files and did it work?

If you don’t have a good answer to these questions, look for ways to determine how to answer them today. In the worst case, take your most crucial files and email them to someone or use a service like drop.io as a temporary place to put them while you find a longer term solution.

You don’t need a complex solution. In fact backing up your files should be as easy as brushing your teeth! And just as important.