How Important is Education?

by Nick Monday, August 29, 2011 9:09 AM

About a month ago, I took the day off from work and went to Oshkosh for the EAA Fly-In. If you've never had the opportunity to go, and you enjoy flying, it's quite the experience. For the two weeks of the fly-in, the skies over Oshkosh become the busiest airspace in the world, and the variety of aircraft is quite impressive.  The day that I went up was declared to be Burt Rutan day, and the air show that day featured several of his innovative designs, and they had several more on display which did not fly. Burt Rutan was also there that day, spoke at several different venues, and I was lucky enough to hear him speak.

Burt RutanBurt Rutan, in my opinion, is one of the move innovative aerospace designers in history. While few of his designs have become extremely popular at the time, the designs he used often times were incorporated years later after more mainstream companies and designers started using them. He is truly the definition of "years ahead of his time".  Among various aircraft, he also designed SpaceShipOne, the first private manned spaceship.

Rutan spoke on many different topics, from his history as a designer, to the Space Shuttle. However, one of the more interesting topics he talked about was the value of having an aeronatical engineering degree in aerospace engineering. His view was that graduates of an aerospace program were essentially statisticians with no creativity. They would look at lots of data about how a current design operated, decide on a couple of areas that could be changed, and made minor tweaks. Then they'd run the data again. In any given year, an aircraft design would improve, but only on the margins.

According to him, many aerospace designers don't have a "gut". They don't come up with innovated designs that are truly game changers because they don't have a gut sense about how a design should work. If they can't model it directly, it won't happen. Rutan also talked about some of the low tech and rather simplistic methods he used to test various aircraft designs to verify that it would actually fly... but that was generally enough. One of those methods involved pulling a scale model attached to a trailer with a ball joint down a highway with his car.

Rutan's point was, just like the old basketball saying goes that "You can't teach height", you also can't teach that kind of creativity. You are either an out of the box thinker, or you're not. And often times colleges are structured in such a way that they try to suppress any subersive thoughts you might have about new and innovated ideas. This is not to say that data analysis and modeling aren't important. But at the same time, in any technical field, there is far more to the job than simply following existing models and slightly improving them.

These same lessons apply to software development. Education and certifications can be good signals to someone's ability, but there is far more to being a good developer than knowing your GoF patterns and the syntax to your chosen language.

It's Free - Does That Mean You Can't Complain?

by Nick Monday, January 31, 2011 5:53 PM

I found this story about a man suing Facebook to be rather interesting:

In seeking $500,000, Fteja is suing Facebook for disabling his account, in which he had about 340 friends and family and had spent "timeless hours creating content and relationships [Facebook] benefitted from," the suit contends. He wants it back on, and he wants the company to pay for the damage of alienating him from his family and friends (about $1500 per friend/family).
There are a lot of mines to step on that could result in Facebook shutting down someone's account, according to its terms of service, and Fteja can't figure out what he did wrong.

"I know one thing - I didn't do anything," he told The New York Post (which lists him as 39 and a native of Montenegro. Gotta love those New York dailies.). "I didn't violate anything."

He aired his speculations to the tabloid. "Did someobody hack my account? I don't know. If it's that someobody hacked my account, Facebook should help me. If you have a problem with your AOL login, AOL helps you. Not Facebook," he said.

Now then, I don't know if this is worth half a million dollars, but it still poses an interesting question. I think he's right, that even though the service if "free", Facebook does get payment from all of us in that it uses our time and our information in order to allow it to make money through advertising. And while Facebook certainly ought to be able to ban people from violating its Terms of Service, does it not at least owe someone an explanation other than "you violated our Terms of Service"? After all, these are usually very complicated, and often times vague legal style documents.

Its quite possible that someone can violate any website's Terms of Service and not realize it. Oftne times these violations are really subject to debate. This type of issue has also come up with Apple when developers have their apps rejected for often times unknown violations of their App Store Standards. In Apple's case, these vague responses are even worse because developers pay money to submit an app to the store.

People also complain about Google's responsiveness when they have problems with their free services like Gmail. Since so many of the money making websites that we may develop are "free" and use an ad-based model for revenue, the question becomes... what do we owe our users?

How Geeks Misunderstand Economics and Marketing

by Nick Tuesday, December 30, 2008 3:53 PM

As high quality technologists (which I assume all my readers are ;) ), most of us are usually fairly specialized in our field.  In other words, we're very good at what we do for a living, and that often comes at a price at not knowing other things, even if they have some importance on our business.  For instance, we may be very good at programming in C#, Java, etc. and can tell you the classes in the BCL by heart, or list off the GoF patterns from memory, but couldn't figure out how to make money selling software if we tried.  I quickly thought of that as I was reading this article in the New York Times on the cost of text messaging vs. what we are charged:

TEXT messaging is a wonderful business to be in: about 2.5 trillion messages will have been sent from cellphones worldwide this year. The public assumes that the wireless carriers’ costs are far higher than they actually are, and profit margins are concealed by a heavy curtain.
Professor Keshav said that once a carrier invests in the centralized storage equipment — storing a terabyte now costs only $100 and is dropping - and the staff to maintain it, its costs are basically covered. "Operating costs are relatively insensitive to volume,” he said. “It doesn’t cost the carrier much more to transmit a hundred million messages than a million."

Once one understands that a text message travels wirelessly as a stowaway within a control channel, one sees the carriers’ pricing plans in an entirely new light. The most profitable plan for the carriers will be the one that collects the most revenue from the customer: unlimited messaging, for which AT&T and Sprint charge $20 a month and T-Mobile, $15.

The entire premise of the article is in essence to say, you the consumer are being ripped off, because text messages cost nearly nothing to transmit, while it costs you the consumer significantly more to actually send them.  There is even a reference to an investigation spurred on by Sen. Herb Kohl.  Clearly, the intent is to suggest that we're being "gouged".  Unfortunately, this perpetuates the myth that the price of a good or service needs to somehow be directly related to the cost of production, and that charging more than some percentage higher than the cost is somehow wrong or illegal.  Worse yet is when these improper assumptions lead to regulation which then hamper the ability of businesses to market in new and innovative ways.  But I'm being too generic here.  Let's look at specifics.

If I write some software package and offer to send it to you on a CD for $50 (plus S&H), is that justified?  After all, it costs less than a dollar (maybe even a quarter) to actually burn a CD these days.  Worse yet, what if I charge you the same for an electronic download which cost even less to distribute?  You and I know that there is nothing wrong with that, because we naturally think of all the time and effort it took to actually write the software itself.  Part of what we charge reimburses us for our initial time, when we weren't making any money on the yet completed software.

Look at a different example, in the gaming industry.  Companies charge $50 - $60 a copy for games on the Xbox 360, PS3 and Wii.  A significant amount of that cost is actually wrapped up in licensing fees that go to the console maker (Microsoft, Sony and Nintendo).  Are those licensing fees too excessive?  At first glance, it may seem so.  However, when you look at the business as a whole, you see that its simply a marketing technique.  That's because the console maker actually take a significant loss on each of the consoles it makes in order to get enough gamers in the market.  They then try to recoup that money through licensing fees on the games themselves.  In other words, the higher cost of the games is used to subsidize the console.  You can't separate the cost of the game from the cost of the console.  If they charge less for games, then the consoles would have to be more expensive.

Many people want to demand "a la carte" pricing from cable companies, but that too would come at a price.  Many channels are simply not watched enough to pay for themselves if they were priced on their own.  They only exist because they can be bundled with more popular channels in a package.  Cable companies are able to offer a wider variety of channels for smaller niche audiences because they charge more money than normal for popular ones.

Similarly, it is unfair to look at the cost of text messaging on its own.  In fact, cell phone companies work similarly to game console manufacturers in that they actually take a hit on the phone itself, in exchange for your cell phone contract.  Text messaging is likewise used a constant overall revenue stream, while the companies take losses in other areas.  Looking at text messaging as a whole ignores other areas of the business that may take a loss, or a much smaller profit.  If you force companies to charge less for text messaging, then other services may be made more expensive in order to make up the difference in profitability.  Worse yet, some services that are offered at a loss may be eliminated because people would be unwilling to pay their true cost, which might cost customers.

Of course, the real problem, once again, is the view that the price charged for a good or service needs to be directly related to the cost in providing it.  However, the reality is that the cost of a service is only limited to the willingness for people to pay for it.  There is nothing wrong with that.  It merely places a value on your desire for a service.  As soon as a company starts charging more than you value the service, you simply stop paying for it.  The actual cost in providing it is only relevant so long as the company can charge enough to stay in business.

Sending Secure Mail

by Nick Wednesday, December 10, 2008 10:36 AM

As part of my current re-evaluation of my computing systems, backup processes, and so forth, I've also started to take serious efforts at securing some of my data.  Along with those efforts, I wanted to make sure that all of you were aware that I do use PGP for sending secure email.  If any of you ever feel the need, you can download my public key from the PGP server.  You can also find a link to my PGP key on the left side of my blog.

New Code Monkey Cover

by Nick Wednesday, July 09, 2008 4:29 PM

Jonathan Coulton pointed out this great cover of his song Code Monkey (no relation to my blog) which was done by The Grammar Club.  Take a listen:

How Did I Get Started In Software Development?

by Nick Thursday, July 03, 2008 2:54 PM

Derik didn't tag me, but I found his responses so similar to mine, that I thought I'd jump into the meme...

How old were you when you started programming?  Like Derik, I was a relative late bloomer into programming.  I had a IBM PC XT at home, and I had a knack for writing nice and tidy batch scripts, but I didn't really get into real programming until I took an programming class in high school.  The normal class conflicted with the AP Calculus class that I was taking, so I took it with a friend independent study.  We would get our assignments for the week on Monday morning, finish them all by the end of that day, and then tutor people in Calculus in the library.

What was your first language?  Technically I guess it was True BASIC... though I also did a lot with QBasic.  I also did a little bit with Pascal back then... oh those were the days. Aside from the basic learning programs in class, the biggest program I wrote back then was an analog clock with real time display and a second hand.

What was the first real program you wrote?  I guess the first real program that I ever wrote was a web application (at least that's what we call it know) in Perl for a company to do online dispute resolution.  It actually was a pretty major endeavor, and aside from some patent issues, was pretty innovative.  To date, that is the one and only project I've ever written in Perl.  *shudder*

If you knew then what you know now, would you have started programming?  Duh... of course.  I also would have started sooner, not that I ever felt that behind... it's just I would have enjoyed it just as much even earlier I think.  I've never had a bad experience programming (aside from some normal bad jobs that any profession can have), that has made me regret being a programmer.

If there is one thing you learned along the way that you can tell new developers, what would it be?  Document!  Save emails!  I don't know how many times a decision was made by someone which led to a major architectural decision, only to be undone later by the same person, claiming he had no knowledge of the earlier decision.  If someone tells you something important verbally, send them a confirmation email and keep a record of it.

What was the most fun you've ever had... programming?  I'd say the last few jobs I've had with a small group of guys from my consulting company have been the best.  It's a great group, who knows what they're doing, just does the work, and we drink afterwards.  Really... how much better can it get?

Who am I calling out?

I'm not going to call out anyone in particular, but if you do decide to add to the fun, just leave a comment so I know!

How to Get a Geeky Guy

by Nick Monday, June 09, 2008 8:31 AM

For all those ladies interested in catching a geeky guy... or keeping one once you've snagged him, here is a funny guide for you.  Via @larryclarkin.

Looking For Some Cool Free Software?

by Nick Friday, June 06, 2008 11:27 AM

Monday Music - Coulton Craze Edition

by Nick Monday, May 05, 2008 8:37 AM

In honor of a fantastic Jonathan Coulton concert in Madison on Friday, I give you a Monday Music twofer!  First there is RE: Your Brains

And of course, I would be remiss if I didn't include Code Monkey.

That's the great part about his fan base... they are all perfectly willing to make his music videos for him with World of Warcraft.

I took a few pictures with my camera phone if you're interested.  It should come as no surprise that the crowd is very geeky, and almost everyone there was wearing "the uniform"... i.e. khaki's and a polo shirt.  And when Paul and Storm announced a giveaway for the first person who could show a 12 sided die, not only was there one person there with one, but it was a race between a dozen people to see who could get it out first.  And when Jonathan asked for a Mac Book power cable because he forgot his, there was actually someone there who had one to loan.

Deeper in .NET Downloads Available

by Nick Wednesday, April 09, 2008 11:40 AM

For those of you that missed Deeper in .NET, and didn't think my live blogging was enough, you can find links to presentation and code downloads at the WI-INETA site here.  I highly recommend the slides for The Science of a Great UI and The Scaling Habits of ASP.NET Applications.  The information presented in those two presentations were truly unique.  The LINQ presentations were good overviews of the technologies and new language changes to support them, and are worth downloading to review, but can also be found easily in numerous books, white papers and MSDN articles.

About Me

Nick Schweitzer Nick Schweitzer
Wauwatosa, WI

Contact Me
I'm a Software Consultant in the Milwaukee area. Among various geeky pursuits, I'm also an amateur triathlete, and enjoy rock climbing. I also like to think I'm a political pundit. ... Full Bio

Community Involvement



Flickr Photos
This is a Flickr badge showing public photos and videos from Nick_Schweitzer. Make your own badge here.

Standard Disclaimers

The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway.

© Copyright 2017 Nick Schweitzer