software development concepts

wearable computing

Steve Mann, Cyborg

I may have an unusual affinity for hardware, but Steve Mann [http://en.wikipedia.org/wiki/Steve_Mann] is in a class of his own. He lives the hardware [http://query.nytimes.com/gst/fullpage.html?sec=technology&res=940CE0D71239F937A25750C0A9649C8B63] . Steve Mann may be the world's original

By Jeff Atwood ·
Comments

technology trends

The Technology Backlash

Riding the waves of technology in the computer industry is exhilarating when you're twenty, but there's a certain emptiness that begins to creep in around the edges by the time you're forty. When you've spent the last twenty years doing nothing but

By Jeff Atwood ·
Comments

design patterns

Rethinking Design Patterns

Many developers consider the book Design Patterns a classic. So what's a design pattern? A design pattern systematically names, motivates, and explains a general design that addresses a recurring design problem in object-oriented systems. It describes the problem, the solution, when to apply the solution, and its consequences.

By Jeff Atwood ·
Comments

technology trends

Learning, or, Learning How To Learn

One of my most eye-opening early experiences was a tour of a local manufacturing plant during high school. One of our tour guides was a MIT trained engineer who accompanied us, explaining how everything worked. At the end of the tour, he gave each of us a picture of a

By Jeff Atwood ·
Comments

.net

Supporting Open Source Projects in the Microsoft Ecosystem

As part of my new advertising initiative, Microsoft and I are teaming up to donate $10,000 in support of open source .NET projects. Why am I focusing on .NET open source projects? In short, because open source projects are treated as second-class citizens in the Microsoft ecosystem. Many highly

By Jeff Atwood ·
Comments

legalese

Does Anyone Actually Read Software EULAs?

If you've used a computer for any length of time, you've probably clicked through hundreds of End User License Agreement (EULA) dialogs. And if you're like me, you haven't read a single word of any of them. Who can blame you? They&

By Jeff Atwood ·
Comments

programming languages

Background Compilation and Background Spell Checking

Dennis Forbes took issue with my recent post on C# and the Compilation Tax, offering this criticism, pointedly titled "Beginners and Hacks": Sometimes [background compilation and edit and continue] are there to coddle a beginner, carefully keeping them within the painted lines and away from the dangerous electrical

By Jeff Atwood ·
Comments

programming languages

Gates and Jobs, Then and Now

If you didn't get a chance to watch today's historic interview between Bill Gates and Steve Jobs, you should. Finally seeing these two computer industry giants on stage interacting with each other was fascinating and at times even a little touching. * Steve Jobs and Bill Gates

By Jeff Atwood ·
Comments

software development concepts

The Best Code is No Code At All

Rich Skrenta writes that code is our enemy [http://www.skrenta.com/2007/05/code_is_our_enemy.html]. > Code is bad. It rots. It requires periodic maintenance. It has bugs that need to be found. New features mean old code has to be adapted. The more code you

By Jeff Atwood ·
Comments

software development concepts

When Hardware is Free, Power is Expensive

Bill Gates has often said that over time, the cost of computer hardware approaches zero. Here's one such example: Ten years out, in terms of actual hardware costs you can almost think of hardware as being free. History has proven him right. Computer hardware isn't literally

By Jeff Atwood ·
Comments

programming languages

Bill Gates and DONKEY.BAS

It's hard to imagine now, but in the early days of Microsoft, Bill Gates was an actual programmer [https://blog.codinghorror.com/how-to-become-a-better-programmer-by-not-programming/]. One bit of hard evidence is the BASIC program DONKEY.BAS [http://en.wikipedia.org/wiki/DONKEY.BAS] included with original IBM PCs running IBM

By Jeff Atwood ·
Comments

c#

C# and the Compilation Tax

Over the last four years, I've basically given up on the idea that .NET is a multiple language runtime. * The so-called choice between the two most popular languages, C# and VB.NET, is no more meaningful than the choice between Coke and Pepsi. Yes, IronPython and IronRuby are

By Jeff Atwood ·
Comments