Recently in Software & Web-tech Category

the truth about software bugs

All software has bugs. If you think you are going to write a complicated program without any bugs, you are fooling yourself (or maybe you are lying to yourself). Space ships, medical devices, car accelerators, office applications. Some programs are worse than others but all software has bugs.

After a few releases, there are things that never worked right, things that broke recently and things that just dont make sense anymore. By the time you get to version five or six of your product, you only have one decision to make: Do you aim for perfection or stick with what you know? Given that you already have a list of known problems, do you try to do things the right way now or do you leave things well enough alone?

If you leave it alone, it will stay broken but at least you understand how it is broken and you have already lived with it that way.

If you try to do it the right way, you do so knowing it still wont be perfect (all software has bugs). If you forge ahead with changes, you dont know what those future problems will be so you are taking a risk but at least you tried to make things better. If you are going to have bugs anyway, why not at least try to do the right thing?

How you answer this question says a lot about you as a developer. How your team answers this question says a lot about your company culture.

One set of people want to manage risk. For them, the devil we know is clearly the safer decision because the other path is unknown. What if there are bugs? What if something goes wrong? How bad will it be? Much better to stick with what we know. Someday we can come back and do it right, but not now.

The other set of people want to pursue their vision. For them it is better to die trying than to live with the mediocrity they know. These people are motivated by a vision and the risks always seem small in comparison.

Most companies have both types of people and they are always at odds with each other because of how they feel about risks. Both types of people are intelligent and rational and both paths make sense. Part of the tension is that there is no right answer and once you choose one path you never know what could have happened if you had chosen the other path.

The only constant in this debate is that when it is all said and done, all software has bugs.

Facebook

One of my resolutions for 2010 was to (force myself to) give Facebook another try.

I am not really a FB person but I am starting with 1 post every day or two and after a month now, it seems ok.

I realized that I have moved a lot and in the process I have lost touch with a lot of friends. Michigan (twice), Texas, Kentucky, Pennsylvania, California and now Washington. I have had 12 addresses since college.

When I look at friends that have lived in the same place their whole lives (or even more than 4 years) I can see the difference and I miss my old friends. FB seems like a way that I can casually reconnect with those folks. It has worked for Angela, not so much for me yet, but I will see how it goes after 6 months or so.

So see you on FB. I will be doing brief posts there and focusing on real writing here.

the evolution of communication tools

Over the years there has been a steady progression of new technology designed to improve communications.

  • Postal mail, now called snail mail
  • Telephone
  • Email
  • Facsimile, aka fax
  • Text IM
  • P2P file transfer
  • Audio calls, aka VOIP
  • Video calls
  • web pages or sharepoint
  • SMS messages
  • video conferencing

By improving communications, we increase cooperation, coordination and productivity in the work place. Each tool is used in work and social situations but these days I focus on business applications of communications technology.

This is a fascinating space that continues to evolve because the basic problem, sharing information, is so difficult.

Each technology addresses three basic problems:

  • the type of information being transfered, such as ideas or images;
  • the different physical limitations of the parties, in the same office or across the planet, 1-on-1 or 1-to-many;
  • and different information contexts, a recommendation, a problem, a task, a promotion, a reprimand or firing.

For instance, you want to explain a problem to someone. That is the basic information which could go in a letter, or a phone call or an email. But there is also a lot of contextual information, such as body language or attitude which are best transfered face to face, a phone call or a video call.

These days people are in love (and overwhelmed) with email but a lot of momentum is moving to faster mediums like text IM and SMS messages. This brings up another issue in this space: adoption.

Each tool lends itself to one type of communication over another but people tend to learn one tool and then lean on it for every task. A prime example is email. People send 1-line emails with <eom> in the subject; most of these emails are better handled as a text IM. People attach files and documents in emails; the attachments should be send as p2p file transfers or stored on a central website.

Adoption rates for each technology generally revolve around age. The oldest workers rely on telephone calls and fax. the next oldest rely on email for all tasks. Then there is a group that uses p2p file transfer and websites instead of email attachments. the youngest workers rely on telephone SMS messages and text IM because it is so much more immediate than email. There are also technologies that everyone seems to struggle with using like video conferencing.

The reason for this adoption behavior is that learning a tool and incorporating it into your personal work habits is easier than learning a tool, unlearning it, and learning a new tool. Younger people dont have to unlearn anything so they gravitate towards the newest technology.

With all these tools available, business and employees seem to be right in the middle of adopting work behaviors that use them efficiently. The present state is kind of a mess as each technology develops independently and workers use a mixed up combination of tools at different contexts.

At the same time, we are seeing newer technologies particularly around the web. Social networking sites are adopting and adapting pre-existing technology models like text IM and video to be used in a web context and applied in new ways.

One factor that used to be significant is quickly going away: connectivity. For a long time this was an overriding fact. Can I phone them? Do you have a fax? Are you online? Broadband access through a desktop or cell phone is quickly becoming a non-issue which means solutions will coalesce around a standard of immediate connectivity.

It will be interesting to see if any company can rethink the basic idea of communications and refactor the plethora of existing technologies into something seemless, usable, and clearly superior.

the $150 PC

In the USA, we are well on the way to a personal computer in every household. At first that meant a desktop, now it often means a laptop.

But it seems pretty clear that the "PC" for the other 6 billion people on Earth is going to be a cellphone. Or perhaps a netbook.

Take the netbook form-factor -- portable like a phone but much larger screen and keyboard.
Add always-on Internet access through a cell phone carrier.
Add a very low-power CPU like VIA's EDEN line for super-long battery life (as in days not hours).
Add a Linux OS in firmware with a decent window manager and support for a web browser.
Add web-applications for common tasks from Yahoo, Google, and startups.
Add an offline-web technology like Google Gears.

The result?

Email, instant messaging, voice and video calls, watch photos and videos, shop, create basic documents and spreadsheets... You get a system that does almost everything people want to do without buying a single piece of software.

The result could be a system that satisfies basic computing needs at a really low price. Sell 300 million of them in the BRIC countries.

A win for hardware companies who make hardware cheaper every year and need volume.

A win for web companies that need users (eye-balls) and continue to add power to browser-based software.

A loss for OS and desktop application companies like Microsoft.

It goes without saying that this is not a new idea. The threat has been quashed by Intel and Microsoft for years but it keeps... coming... back...

Eventually it might actually take off. Or the same thing might just happen on cell phones.

CONTINUE  

WASLreport updated 6-19-08

Today I released my first major update to WASLreport. This update adds new user functionality as well as a lot of non-visible code cleanup.

For this release I had three goals:

  1. Manage my code and releases with Subversion. (Another great Pragmatic book, "Deploying Rails Applications: A Step-by-Step Guide (Facets of Ruby)", was a big help here.)
  2. Add the District search.
  3. Clean up the rails and javascript code so that I DRY.

Overall the code looks much better now and the site should reflect that. Unfortunately there are still two major code problems and one in the data.

  • I have not been able to get google maps to work with Internet Explorer.
  • I have not been able to get the javascript for sorting the tables to work with gmaps.
  • A lot of the school locations are just plain wrong. Improvements to the map will make these errors much more obvious now.

waslreport.com launches

This weekend I launched the initial version of waslreport.com, my first Ruby on Rails application. *phew*

Anyone who thinks the problem is that there aren't enough good ideas should write some software. Ideas are easy. Executing ideas, even really simple ones, is a biatch.

As I worked this weekend I was reminded of those many 80/20 rules. If it takes x amount of time and effort to get a website working; it takes another 4x to get it cleaned up enough to actually share with the public. And even then your implementation will fall far short of your original idea.

The good news is that I finally finished that 4x and waslreport.com is alive.

The district search is not working yet and there are still problems (after three data scrubbing attempts) with some school locations but it works. Its useful. Its fun to look at. (At least it is for me since Im a map junkie.) Most of all, it is live on the web and no longer an idea in my head that I talk about at parties.

Check it out and let me know what you think. I still plan to add stuff but the next 4x might take a while. \:^)-

customer-centric design

I build software for a living and recently I have been reflecting on a phrase I often use: customer-centric design.

Why are so many products so frustrating to use? For a lot of them, I feel the answer is that they were not built with customer-centric design. In contrast, I would argue that the tools which are the easiest to use and most useful are.

In a word, customer-centric design means taking into account what the customer wants to do and how they go about doing it. While the idea seems simple enough, it is quite rare in practice.

What makes customer-centric design so rare?

Depending on how deep you want to go, there are a number of factors related to the answer to this question. For now, I want to cover two of them.

decisions are tough

I usually say that C-CD is rare because good design requires decisions. Someone has to decide what to put in and what to leave out and most organizations are surprisingly bad at making decisions.

My usual design example is the humble remote control. My 5 year old Tivo remote is terrific. It fits in my hand and the buttons are clear and easy to operation. Even in the dark, I have no problems using it. In contrast, my brand new PS3 remote is terrible. Even though they have had 5 years or more to perfect it, it still sucks. There are a a lot of tiny buttons that I never use and when I need it, I always press the wrong button. Invariably, I need to turn on the lights an search for the right button.

Tivo understood me as a customer. Sony does not.

Whether the Sony remote was designed by an engineer or it was designed by a committee, I do not know. What i do know is that no one made a decision about the buttons I needed.

If you have ever worked in a major corporation, you already know that few people jump up in a meeting and make pronouncements about how it will be. Most people sit back and wait for someone else to lead or they play it safe with no-answer like "include them all".

"Which of these 45 buttons should we include?" The ultimate decision that doesn't decide anything is "all of them".

To get to Apple's 6-button remote, someone had to decide which 6 buttons were the most important. By choosing 6 buttons and dropping 39, someone is going to complain. Often IN ALL CAPS.

If you choose right, you get a great design. If you choose wrong (or even if you do choose right), you get fired. People do an instinctive cost-benefit analysis and usually opt for the safer course -- no decision. Better to have a mediocre remote with 45-buttons than piss off the CEO's cousin by choosing the wrong set of buttons.

Making decisions is an organizational reason why customer-centric design is rare.

communication and understanding

The other reason C-CD is so rare is communication. I actually wrote this post because I realized that I have been dealing with a perfect example of this situation at work.

In my current position, I use two tools to get things done.

The main tool is built by a team of developers 1,000 miles away. I have never met most of them and we communicate by occasional email or phone calls. They have never actually seen us use the tool or had to deal with the problems we use the tool to solve. While I use the tool every day, they dont know much about what I actually do with it.

As you can guess, using their tool is an exercise in frustration. The information I need to find is often hard to get and a task that could take 3 clicks will usually take 10 clicks or not be doable at all. Even though myself and my team are the customers, the tool was built by developers in ways that made it easiest for the developers. It would be hard for them to do otherwise.

In contrast, I recently built my own tool to support my team with another set of tasks. As a user, I was intimately familiar with the problem domain and the workflow we use to solve the tasks. I use the tool every day and I collect input from my team every day. Every week I set aside some time to take that input and improve the tool. I may be biased, but my tool is a joy to use and after just a few weeks I have seen my productivity increase greatly.

The difference between these two tools is understanding the customer's needs which is essentially a communications problem. Unfortunately it is very difficult to transfer this kind of nuanced information, doubly so if you deal with a consumer product that has millions of external customers.

I am still a proponent of customer-centric design but it is good to recognize that several factors just make it plain hard to do.

c'mon adobe

Adobe makes some of the most prevalent and expensive software around. Which is what makes it so frustrating when it's crap.

Just today my browser crashed on two different computers when viewing websites with flash content. While viewing Samsung's website, I got a bunch of "stack overflow 60" popup windows and then my whole browser crashed -- all 10 tabs. Three times. Later in the day on a different computer, BMW USA's website did the same thing. First it told me to get Flash 9; then it crapped out.

It is one thing for a website not to work. It is something else entirely for a website to crash your entire browser. Thank god for Firefox's ability to reload the entire session at startup.

The experience today reminded me a previous experience I had with Adobe software this month.

I think I am already on record complaining about Adobe's intrusive patch/update reminders and their infuriating licensing/anti-piracy system.

The licensing system in particular makes me want to steal their software but instead I paid a small fortune for Adobe Create Suite 2. With that kind of investment, I have some expectations that I dont have with, say, a free app like Gimp. My main expectation, call me unreasonable, is that the darn program works at all.

Well it appears that some time in the past 4 months, a patch to my MacbookPro caused Photoshop CS2 to stop working. Of course, I never patched any Adobe software and I dont have any clues about when things might have broken because I didnt find out there was a problem until the night when I need to get something done.

It is a 20 minute job in Photoshop but instead of getting it done, I spend an hour debugging Photoshop before giving up in disgust. Dont you love those PC-moments? Priceless.

You see the last time I used photoshop, say 4 months ago, it was fine but now it refuses to load any files. The other CS2 apps are fine but when I try to load a file in Photoshop, I get an error. And what a wonderful error message it is:

"Could not complete your request because of a program error"

Gee, that is helpful. As is Adobe's famously excellent website help pages, which happily resolve all of your Adobe software woes with a simple fix: re-install your OS. Good grief. This particular error suggests that I have problems with my hard drive or possibly my printers. In fact, the only thing it does not suggest is broken is the software itself.

So do I re-install my OS? Do I run the license gauntlet and re-install CS2 (again)? Do I find an alternative program and write off my purchase or worse, do I upgrade to CS3 in the hope it works? None of these choices are a customer-centric solution.

Software is hard to write. Software lets us do amazing things. But there are few things more frustrating than expensive bloatware that does not work when you need it most.

Ooops, Acrobat just popped up a warning that it needs to update to a new version. Gotta go...

mmod

It is March Madness once again and I am glued to the TV set looking for MSU games. But this year is a little different.

There are 4 simultaneous games going on all day but there is only one CBS channel in any given area. Until this year, you were out of luck if your local CBS chose to show a different game.

This year CBS is showing two games at once. One on their HD channel and another on their secondary digital channel. (Although once Duke started playing, they showed them on both channels :( The picture quality of the second channel is not very good but at least you can see a different game. That bumps the odds of seeing the game you want from 1 in 4 to 2 in 4.

Even better, this year the NCAA is running a website that allows streaming video of all the games. While they had this service in previous years, it sucked. You got a tiny picture with a crappy image. This year is the first time it is really usable. The video quality is still awful but at least it zooms to full screen and almost looks like regular analog TV. Definitely watchable. Definitely an improvement over last year.

MMOD is an example of the future. Content streaming straight from the content owner, the NCAA, to your home TV set via the Internet. CBS's HD picture is still the best but I will be watching for any chance I can to see MSU.

oh, its on now! 2007 - the year of movie downloads

There have been companies trying to sell downloadable movies for years now but by and large they have been small and mostly ignored. It looks like that is going to change in 2007.

Last year Apple made a deal with Disney to sell movies over iTunes. Apparently Jobs wanted to set a download price of $10 but was forced to go with a split pricing scheme ($15 for new movies; $10 for old ones) due to pressure from movie companies.

In particular, Wal-Mart pushed back on the whole idea of movie downloads, which is important because Wal-Mart alone accounts for 40% of the $17B DVD business. Wal-Mart charges $20 for a DVD and supposedly pays movie industry $17 for each title. To combat Apple, Wal-Mart asked the movie suppliers to drop their price for physical DVD's to $14 or less so that Wal-Mart could match Apples $15 price - which seems a little odd since downloading a movie really should cost less than a physical disk, which needs to be manufactured and shipped.

But that was six months ago.

CONTINUE  

the new media revolution

Revolutions of the past involved angry mobs of people running amok. Revolutions of today tend to be quiet affairs spurred on by technology changes. In fact, revolutions today tend to be so quiet, they go on without notice or understanding by most people.

The Internet revolution is one such quiet storm. We saw the first wave in the late 1990's with a lot of hype about "new economies" and jokes about how Bill Gates "missed the Internet." Here in 2007, we are at the start of a second wave which is much larger and more tangible.

There is a growing digital media revolution which will have a tremendous impact on the system and many of the companies that we have grown up with for decades. Despite its significance, few people seem to notice or stop to think about the changes as they gradually appear. This post is an attempt to outline that system and the forces of change.

CONTINUE  

a customer's perspective on the changing face of media

I just read a fascinating article about YouTube in Wired Magazine's December issue called "YouTube vs. Boob Tube". The article does a great job of talking about the issues involved with "New Media" companies like YouTube in regards to advertising money.

What the article does not really cover is why, the root cause. Why is media changing?

Simply put, traditional media is changing because it did a poor job of servicing customers and it is no longer able to keep alternatives away from consumers.

CONTINUE  

software development gets cool again

After taking a few years off of writing code, I am pleased to see how much the Internet culture has changed software development for the better. (At least for my better :). Software development is getting really cool again and empowering small teams to make slick products.

As one example of how things have changed, let's look at my experience from engineering school back in the day. (The day before the WWW or browsers.)

Image of item at Amazon.com

1,200 pages of dull

I have always had a love for video games and computer graphics so I took a few classes on the subject in college. Our textbook was thicker than a phonebook and our semester project was to build the most basic drawing program you ever saw. We worked alone and wrote in C and X-Windows.

The skills we learned focused on the algorithms for drawing lines, simple curves and basic shapes like a circle. I took this class twice and one time we did the 2D drawing program. The second time we did a simple wire-frame 3D viewer was a final project (think about Battlezone).

Contrast my experience with someone taking a graphics class today. Thanks to OOP and common APIs like OpenGL (probably written by programmers that took classes with me :), today's graphics students dont write simple algorithms; they write entire games for their class projects.

I wish we had actually written something as fun as Battlezone

The lessons here?

Students today get to do code that is a lot more fun because they get a lot more done with each line of code. Compare my 3D wireframe viewer to the full fledged games by these students.

The reason for this is largely based on the power of object-oriented programming and common APIs - both of which are the result of building on the work of programmers before them. Now software development has always built on the work of others before them (I certainly did not write in assembler nor did I have to write a windowing system like X11) but the industry today has matured to a point where we are really seeing results.

CONTINUE  

explode your brain with CS2

When I was a student, I used my student discount to help me purchase Adobe's Creative Studio 2 software. For years, I had heard about how great Photoshop was but I never had the money to buy it or the time to learn it. Instead I got things done for $100 with PaintShopPro (version 7 no less).

School was super busy so I never really had time to figure CS2 out or even to run the instruction video that came with it. Frankly, the whole thing always felt a little daunting. CS2 includes so many programs (Photoshop, Illustrator, GoLive, Bridge, InDesign and Acrobat) that I wasnt even sure what they were all for.

But enough is enough. I popped that instruction DVD in my computer and resolved to learn CS2.

And my brain exploded!?!

Jesus, god in heaven!! This thing is he most complex software I have ever seen, it's INSANELY complicated! Even the so-called instruction video was complicated. (Frankly, the video is just a tour of changes to version 2 and nothing like an introduction to the products.)

"Option-click this tiny icon (that you hadnt even noticed before I clicked it)", "control D to open the window", "Just select this option from the 50 shown" - the little instructor guy certainly knows his stuff and I am sure he means well but this tutorial only proves to me how difficult these programs are.

I can see that the Adobe programs work together to provide a consistent workflow but wow, what a huge investment it is to learn the products. Just learning one of these products is a serious endeavor and not something I would want to do again or repeat with competitors products.

Once you have invested the time to learn CS2, I can see that your company would be locked in forever. I am bit surprised though that so many artist-types who dont consider themselves techies have taken the time to learn these product but you cannot argue with the output, which is beautiful to look at.

Not sure how many of them I will ever learn, but I am glad I finally took several hours to at least get an idea what the different products do. My next task is to try to use them myself. At least it will be after I deal with their onerous copy protection and product registration system which still wont let me access the "bonus" lessons in my free DVD :)

Extreme Programming Explained

Image of item at Amazon.com

"Extreme Programming Explained: Embrace Change (2nd Edition) (The XP Series)" by Kent Beck, Cynthia Andres

CONTINUE  

reaping the rewards of individual pricing

In theory, the price a merchant should charge is the price that you are willing to pay. If you are willing to pay more than someone else, the merchant would make more profit.

In practice, merchants (in the US) set a price and charge everyone the same (since we dont negotiate most purchases). This type of pricing is easy to do but leaves an "economic surplus" on the table, unrealized.

Another way the information revolution is changing commerce is that it is allowing merchants to start capturing some of that surplus. Using information, online merchants are starting to focus on how they can offer everyone an individually tailored price/offer. This is an amazing change even though the consumer is not generally aware that it is happening.

CONTINUE  

software detante

Java never lived up to its promise of freeing software from Microsoft's Windows monopoly. On the other hand, Microsoft has not been able to defeat the forces of open-source software (or Java).

Converting Java to the open-source community is a big deal but it is also just one more event in a struggle with a very unclear outcome.

Sun Makes Java a Free, Open-Source Platform

Computer Maker's Shift Aims to Widen the Appeal Of Programming Language

By CHRISTOPHER LAWTON and DON CLARK

November 13, 2006

Wall Street Journal

Sun Microsystems Inc. has decided to make its Java software available on an open-source basis, part of the company's effort to keep current with a technology trend that has changed how programs are written and distributed.

The computer maker, significantly, plans to use a licensing scheme that open-source proponents favor. The move by Sun, of Santa Clara, Calif., could make it easier for Java to be distributed along with the Linux operating system and other popular open-source products.

Java is a programming language widely used in electronics, including for smart cards and cellphones. But the software has been eclipsed for many applications by open-source products, many of which are available free. By offering similar terms, Sun hopes to broaden Java's appeal and lower the cost of using it.

"The fact that we are changing the license and making this a free and open-source technology platform really allows us to look at the current billion installed base and say how do we get to the next billion," said Jonathan Schwartz, Sun's chief executive.

unexpected surprises

I use the internet a lot and bop between three different browsers. REcently I started to use Firefox 2.0. I didnt notice anything amazing from the previous version. Until today.

While I was out and about, my laptop shut itself down. I guess it didn't stay asleep but whatever the reason, all my open applications and windows shut. I keep about 10 apps open at a time so this is a huge pain and lost work.

When I started up Firefox, I was trying to remember all the tabs that I had open when Firefox asked me an amazing question. Instead of starting the browser, it noticed that the browser was not shut down properly and asked if it should restore the open windows. What?! Amazing!!

What a fantastic feature, especially coming from free, open-source software. Now I only wish Microsoft would add that feature to Office, an expensive program that cannot even handle the recently used file list properly.

another winner from Google

In this month's issue of Fine Homebuilding, they mention a free and easy to use CAD program for home stuff. The program is called Sketchup.

Check it out!

google office marches on

People have laughed at the idea that anyone would replace their $400 copies of Microsoft Office with software that runs in a browser and requires internet access to work at all. Then again, the world is full of people with limited vision.

The next version of Microsoft Office is quite nice but Google Office and Open Office keep lumbering on. The question isn't whether Google Office is better than Microsoft's but rather whether the free alternatives are good enough. For years now, people really havent had a choice so we dont know what people want. Moreover the server-based Google Office has some nice file sharing features that Microsoft just cannot match in terms of ease of use.

Google is onto something here and their products can only get better over time. SAAS is the future (or at least part of it :).

CONTINUE  

cool stuff: visualization

One of the things computers can be very good at (in the right hands) is visualization. Taking a set of data and visually displaying it in ways that allow human beings to make new mental connections or observations.

This week someone showed me the Simile project at MIT. Waaay cool. (Be sure to check out the dinosaur demo.)

This is the kind of cool stuff computers should be used for (as opposed to the lame-ass spam and floating advertisements we spend most of our time with).

SIMILE is focused on developing robust, open source tools based on Semantic Web technologies that improve access, management and reuse among digital assets. Learn more about the SIMILE project.

the password dongle you dont have

A few years ago, I got annoyed with passwords. It is a real pain to create serious passwords and still remember them so I began to think about solutions.

At first I wanted to create a little keychain dongle that would be small enough to carry everywhere but large enough to hold a screen and controls that could show you your passwords. Then I thought I could solve the problem with a cellphone and some simple software.

Not being a cell-phone programmer or having any extra time in business school, I let the idea drop. But the problem has not gone away, as evidenced by this article over the weekend.

CONTINUE  

so bad, I cant even believe it!

There is software that is bad because it has bugs in it and there is software that is bad because it was designed to be bad. In all my years of using a PC, I dont think I have ever seen a piece of software designed to be as bad as the printer driver installers from HP.

CONTINUE  

thin clients that dont compete with Windows

Microsoft wants you to run those old PC's as thin clients?

Wow, this just struck me as ironic since running a thin client (specifically java applications on a UNIX box) has been championed as a Windows killer for years. Of course it never killed Windows :) but it is still odd to hear Microsoft even use the term "thin client" let alone offer a product.

Then again, there is a need. Given the immense bloat of Microsoft products, older PC hardware just cannot run the new versions. (Although LINUX and java run just fine :)

Given the very limited number of tasks most people do on their PC's, the increasing power of hardware and the increasingly networked nature of work, thin clients are a great idea whose time is yet to come (again). Basing them on Windows however is more than a little questionable...

CONTINUE  

domain parking: the growth of website billboards

Personally I am not a fan of mistyping a URL and getting a website consisting entirely of ads. I dont know who clicks on these ads but these virtual billboard websites make so much money, they arent likely to go away.

CONTINUE  

more mashups

I posted about "mashups" back in March but this article, which is actually from last December, gives a better description. This is a technology to watch and I thank my friend Gavin for turning me onto it. Check out Gavin's mashup demo/labor of love :)

As mapping tech catches on, the second article shows that the big boys continue to innovate and improve their map services. 59 millions visitors to map sites in February?! Wow.

Expect the next wave to be mapping on cellphones complete with GPS coordinates.

CONTINUE  

its all in the name: Live

Brands are very useful.

A brand is a name. That name creates a container in your brain that gives you a place to store associations, like "good" or "bad". Over time, these associations add up and help us make decisions. You hear the brand name and you immediately know how you feel about it, no need to think. Whether you like branding for business or not, this type of pattern recognition system is how our brain works.

Take "purplevision" for instance. When you hear the word "purplevision", what do you think? Things like "brilliant", "a masterpiece", "we are all going to die from global warming and its our own darn fault" probably came to mind, right? Such is the power of branding.

Leave it to Microsoft to use and abuse branding. Over and over again.

CONTINUE  

Justice Clarence Thomas gets it on with patent trolls

I dont claim to be a lawyer or an expert on patent law but numerous things I have heard about our patent system give me pause.

eBay's "buy it now" button is patented? How is that novel or non-obvious? How is that different from Amazon's "1 Click" button?

I had an interesting conversation with a person from China this year about patents. He explained that in their culture, one could not patent ideas. Physical things could be patented but not something invisible like software. China is an old culture. Maybe there is something to this idea?

CONTINUE  

Google Office

Hmmm, let's see. Web-based email, word processor and now spreadsheet. What will they think of next?

Google Advances Software Challenge With Spreadsheet

By KEVIN J. DELANEY

June 6, 2006

Google Inc. plans today to release a Web-based spreadsheet application allowing users to collaborate online, in a further foray into Microsoft Corp.'s traditional turf.

The introduction of Google Spreadsheets follows Google's March purchase of a company offering a Web-based word processor named Writely. The two free Web-based Google services overlap with Microsoft's core Excel spreadsheet and Word word-processing software. Google's offerings highlight a nascent challenge to traditional software applications by a variety of Web-based services.

Microsoft General Manager Alan Yates said the Google offering is one of a field of similar products competitive with the Redmond, Wash., company's Office and Works suites of productivity applications. "There's nothing new here really," Mr. Yates said.

the next wave

The information revolution is well underway. At some times, it feels like the revolution came and went already along with the easy money in the 1990's. Other times, it feels like the process has just begun.

I have been looking at some companies recently and thinking about this information age. It strikes me that the past 20 or 30 years have been a process of getting computers physically installed in every business and every market. We started with 'big iron' mainframes, then the personal computer revolution with a computer on every desktop, and now we have portable computers like Blackberry's so that we can carry our computer everywhere.

But that was just the first wave of the revolution.

CONTINUE  

the next wave

The information revolution is well underway. At some times, it feels like the revolution came and went already along with the easy money in the 1990's. Other times, it feels like the process has just begun.

I have been looking at some companies recently and thinking about this information age. It strikes me that the past 20 or 30 years have been a process of getting computers physically installed in every business and every market. We started with 'big iron' mainframes, then the personal computer revolution with a computer on every desktop, and now we have portable computers like Blackberry's so that we can carry our computer everywhere.

But that was just the first wave of the revolution.

CONTINUE  

SAAS

In computers, everything old is new again eventually.

The idea of "dumb terminals" running software on a central server is an old idea but these days it has a new name and a new implementation and a lot of potential. The model is being called "software as a service" (which I now see described as SAAS) and you can expect to hear more about it.

SAAS is going to stick around because it provides a real value to normal users and small businesses.

CONTINUE  

episodic content and digital distribution

I've never heard of these guys before but right on! As I heard in my entrepreneurship classes: "if its a good idea, someone is already doing it. If you cannot find anyone doing it, its a bad idea."

Gamasutra

April 5, 2006

Developer TellTale has announced a new pricing model for its upcoming and already released episodic titles that better aligns with current models in other entertainment media. Effective immediately, all episodes in the Bone series that sell through Telltale's digital distribution channel will sell for $12.99. "We will expand the audience for games enormously by setting a price that competes directly with DVDs, music CDs, books and cable television," said Dan Connors, CEO of Telltale, Inc. "The demand for downloadable episodic content continues to grow, and Telltale is providing a steady stream of rich, fully interactive digital experiences at the same price as traditional media which lack the interactive dimension."

THE software as a service target - MSOffice

While I have been sitting around thinking about this idea and ever so slowly writing about it, other folks are writing about the same thing :) Although I think this short article in Technology Review sees the tip of the iceberg, it misses full threat.

Pardon me if I am skeptical of Microsoft's tests of disruptive technologies that threaten its cash cows. It will be a few years but the day when "the computer is the network" will come eventually. Software as a service is inevitable because it is so useful.

CONTINUE  

products evolve into services

For the past few months, I have been thinking about the evolution towards services and service businesses. Instead of writing one huge post (which I have been trying to do), I am going to try to write several smaller ones. The basic idea is that product-businesses from the Industrial Revolution are evolving into service-businesses for the Information Revolution and that software in particular is ready for this transition.

I plan three articles: 1) Products become a service, 2) Software becomes a service, 3) Software is already a service

CONTINUE  

how does spam ever work?

OK, I assume there is some software out there that generates spam. I also assume that someone is making/charging money for sending spam. Maybe there are companies that sell software specifically for generating spam.

From: "Brittany Goodman" <autoren@1000augen.com>
Date: February 14, 2006 4:01:25 PM PST
Subject: Fucking St.Valentine
Reply-To: "Brittany Goodman" <autoren@1000augen.com>

What are you to do if you have bad erection? Especially
in the forthcoming Saint Valentines Day???
Don t worry, it is not the last of pea-time...
The most simple way is to visit our site, order the
medication and that is all you are to do!

Do not kill the clock!

http://dencepro.com/

I get tons of this stuff, most of which I ignore. For whatever reason, I actually read this email and I ask myself, how on Earth this kind of stuff could EVER work? It is in English but it is barely English. Who would ever respond to something like this so that money changes hands?

I must be missing something about the spam marketplace.

what is a computer?

I often hear argue about "windows!" versus "macs!" with arguments that have little or nothing to do with the features of an operating system. I suppose it is our right to argue about anything, (even things we dont understand or perhaps especially those things), but the lack of substance in these debates got me to thinking about the "computer experience" and why I switched to a Mac last year.

What is a computer?

A computer is two things: hardware and software. (Actually I would argue that a "personal computer" is a complex system of hardware and software parts that work together, but that is another discussion.)

For most people, "hardware" means the beige box that sits on their desk. MFLOPS, MIPS, little-endian, big-endian, 70Watts, 90nm process, S-ATA, MHz... People dont understand what those things are and they dont care. The hardware is just a box.

The first question people ask about that box: "Does it run Windows?" My conclusion is that when people talk about computers they are really talking about the software.

In particular, people are talking about one very special piece of software, the operating system. Few consumers could tell you what an operating system is or does, but by providing the user interface to the computer, the OS has become synonymous with the computer.

CONTINUE  

grrr

If you have not done any website design, you are probably not aware of how doggone frustrating it is.

With Television, everyone see's pretty much what the creators want them to see. With the internet, the site someone designs can look totally different for different customers, and you, the designer, have no idea what your customers are seeing.

For instance, I use two browsers, Safari and Firefox. My website looks slightly different with both browsers. Which one should i design for? What about the browsers that i dont use?

I use a Mac. When I look at my website on the mac, the fonts look good, the layout looks good. Looks good. Then I switch over to my WindowsXP computer and the fonts look terrible. Everything looks kind of jagged and lousy. Looks bad. Which system should i design for?

Then you have color. I work with two monitors: the one on my laptop and an expensive LCD on my desktop. Colors on these tow monitors are very different. Which shade of purple do i use? One shade looks good on the desktop but too dark and too blue on my laptop. Which screen are my readers using? Which color should i pick?

What else can be different? Well what desktop resolution are you, the reader, using? Is it 1024x768 or 1600x1200? Depending on the resolution, how big should the fonts to be to be most attractive and most readable?

The questions and the variations go on and on and on. Computers let us do some amazing things but they are also very frustrating to use.

why is there always someone who wants to ruin it for the rest of us?

First you have to learn the technology and its acronyms, like email, HTTP, the web, and blogs. Then you have to learn the ways people exploit said technology, like spam, phishing, and now splogs.

As i have mentioned in the past, the Internet was not designed or built for commercial use. Commercial use took over the Internet with the invention of web pages. As is usually the case when we use something that it wasnt designed for, the Internet is prone to all kinds of abuses, scams and problems.

The latest effort by those that make a living screwing with the system is splogs.

'Splogs' Roil Web, and Some Blame Google

By DAVID KESMODEL THE WALL STREET JOURNAL ONLINE

October 19, 2005

Spam, long the scourge of email users, rapidly has become the bane of bloggers too.

Spammers have created millions of Web logs to promote everything from gambling Web sites to pornography. The spam blogs -- known as "splogs" -- often contain gibberish, and are full of links to other Web sites spammers are trying to promote. Because search engines like those of Google Inc., Microsoft Corp. and Yahoo Inc. base their rankings of Web sites, in part, on how many other Web sites link to them, the splogs can help artificially inflate a site's popularity. Some of the phony blogs also carry advertisements, which generate a few cents for the splog's owner each time they are clicked on.

The phony blogs are a particular problem for Google, Microsoft and Yahoo because each offers not only a Web search engine focused on providing the most relevant results for users but also a service to let bloggers create blogs.

Just this past weekend, Google's popular blog-creation tool, Blogger, was targeted in an apparently coordinated effort to create more than 13,000 splogs, the search giant said. The splogs were laced with popular keywords so that they would appear prominently in blog searches, and several bloggers complained online that that the splogs were gumming up searches for legitimate sites.

Many spammers are buying special software on the Web that allows them to automatically create scores of phony blogs in mere seconds. One program cited by splog critics is BlogBurner, which starts at $47 a month. The tool "creates a unique blog for your Web site in less than one minute -- even if you know nothing about computers," according to the BlogBurner.com5 site.

BlogBurner's founder, Rick Butts, denies that his software is used by spammers. He says it is used by business owners to automatically create blogs based on content pulled from their Web sites. He acknowledges that the blogs being created by BlogBurner are often used to help draw attention to a company's main Web site. "I'm not going to pretend to say we're altruistically creating blogs for humans to read," he says, adding that other companies have mimicked his software and sold it to spammers.

Merry Christmas from Microsoft - Part 2

This isnt really worth blogging but im so pissed off i might as well share the pain. And it's good to note that even people who know a lot about computers still live with frustration and spend (waste?) a lot of time keeping them running.

Let me start by noting that I have had this PC for 2 years and it has been rock solid. Although almost all of that time I was using Windows 2000, not XP. I should also note that I switched to a Powerbook laptop a year ago so the only thing I do with this PC now is relax and play games.

After my problems over Xmas, I verified that my hard drive was damaged. (Of course to do that, I had to use a DOS utility that must be run from a FLOPPY DISK after booting the computer from a FLOPPY DISK.) To keep my computer running, and the games gaming, while i returned the SATA drive, I installed a backup hard drive. This was a previous drive with a regular ATA interface that Windows Setup understands.

I installed XP and things were working fine. I started playing Everquest2 again and was told by some friends to install this nifty map tool, EQ2Map, but alas, it needed the .NET framework which is only available as a download/patch from Microsoft.

Warm

You cannot download patches anymore without activating your copy of Windows. This worried me a bit since I dont know what "activating means," I was only using this hard-drive temporarily and feared that I would use up my "activations" and would not be able to install XP again when my SATA drive returned. But I bit the bullet and activated my copy of XP and I even registered it with Microsoft.

I always do manual patches (with that annoying alarm every time i log in telling me to do automatic patches) but i decided to give the tech a test and tried "automatic patches". It downloaded 29 or so required "security patches", installed them and told me to restart the computer, which I did not knowing it would be the last time my PC would start.

CONTINUE  

skype you too, buddy

We have VOIP at home but I have not tried Skype yet. It sounds like this next version may be worth a look. I wonder how long it will take Microsoft to clone it :)

With Its New Version,
Skype Phone Service
May Enter Mainstream

By WALTER S. MOSSBERG

December 1, 2005

One of the cult hits of the Internet has been a service called Skype, based in Luxembourg, that allows its registered users to make free computer-to-computer phone calls to each other anywhere in the world. Millions of people world-wide use it, and the company was recently snapped up by eBay, the e-commerce giant.

Still, for all its success, Skype has been a niche product, little used by mainstream, non-techie consumers. Much less popular in the U.S. than in Europe, it has mainly appealed here to budget-conscious folks like students and recent immigrants, who often want to make lots of international phone calls.

Now, however, Skype is putting those hurdles behind it. Today, the company plans to release a major new version of its phone-calling software, Skype 2.0, with added features -- including video calling -- and a cleaner interface. It is taking steps to make computer microphones cheap and easy to obtain. More importantly, it is moving its service off the computer to a new breed of Internet-based telephone handsets.

the next big thing

Two articles this month highlight changes in the computer industry, particularly changes that represent a threat to Microsoft.

CONTINUE  

cool tunes from Pandora.com

I just found out about this website tool. After only a few minutes of playing with it, I have to say that i am impressed. This is a very cool way to find new music that you might like and much more sophisticated than Amazon's "other people bought this" system.

Microsoft experiments with the advertising-revenue model

One of the fascinating things about software today is the transition from product innovation to business model innovation. Google and open-source are the two main examples of this change.

Google does search which is just another product and not a particularly new product. But their ability to monetize search, giving away the product and making revenue with advertising, is new and rather amazing.

It is also rather annoying to the king of traditional software, Microsoft. This week Microsoft announced so-called online services, another "innovation through imitation" product.

Very few companies are ever able to succeed with two products that compete for the same customers. In this case web-applications represent a destructive technology for traditional software applications like MS Office. It will be interesting to see how Microsoft handles this tough situation of trying to maintain their dominance while also being ready with competing products.

CONTINUE  

Behold! The emergence of AJAX

Once upon a time, there was a movement away from proprietary software platforms into a brave new future. The argument was that actual users dont care about who makes the platform; they care about solving problems and doing their job with a computer-tool. Sun and others rallied behind slogans like "The computer is the network" and around products like Java that were designed to free programs from the chains of proprietary platforms.

In other words, there was a movement against the dominance of the Microsoft platform. And history shows that Microsoft pulled out all the stops and effectively squashed the movement. Today Microsoft is still the king of traditional software, you cannot purchase a sandwich with a share of Sun's stock, and the voices of software freedom have gone silent and went looking for a new champion.

Google has emerged as the leading candidate for that champion position. So-called AJAX technology (ironically invented and abandoned by Microsoft itself) is emerging as a new threat to traditional software. Although AJAX is basically another version of Java and "the network is the computer" idea but times have changed so these ideas are new once more.

Dont expect a revolution but it will be interesting to see how/if Microsoft deals with AJAX.

(Hey, wasnt Ajax a hero from one of Homer's tales?)

CONTINUE  

Civ4 - the worst thing i have every seen

I went to two stores yesterday to get Civ4. Im eager to play :) none of them had it. So i went out again today and did find it. Paid my $50 and went home. A friend then warned me about some install problems the game is having with AMD and ATI... "How bad can it be?" i thought...

Apparently it can be bad. B-A-D!!

This is the worst install experience I have ever seen for any software EVER.

I installed the game as i would any software but i got an error when i tried to play. A directX init error.. So i check the website.. The website has a 25 step "fix" which can be summarized as follows:

1. Uninstall the game
2. Remove a .dll from the /SYSTEM32/ directory by hand. (a directory Windows doesn't even want mortal men to see)
3. Reboot
4. uninstall the video card drivers
5. reboot
6. download the video drivers BUT DONT INSTALL them
7. Install the game - BUT ONLY WITH EXPRESS INSTALL. You cannot even install the game in a different directory such as /games/...
8. Start the game and let it fail with the original error. what?
9. Now install the video drivers.
10. now play the game...

I cannot even believe that i wrote all of these steps let alone did them. AMD and ATI are HALF THE MARKET!! How can ANY game ship with this kind of problem? It just boggles the mind...

But i followed the steps and... it still gave me the exact same error. #$%@#$%

Eventually i got on Google and started searching for fixes. II found one on a fansite. This fix involved downloading another tool from a previous version of Civ and use to unpack some files in the game directory. In other words, finish the installation by hand.

I did this and the game played flawlessly... Wow.

To make maters worse, the game comes on 2 CDs - one marked "install" and one market "play". Which one do you need to put in the PC to actually play the game? You guessed it, the one marked "Install".