Category Archives: technology

Dynamic Programming Languages are a net negative on engineering productivity

For the purposes of this discussion I will use the term application and system interchangeably to describe a piece of software with more than 300k lines of code and with more than 5 developers.

Dynamic programming languages allow you to make the Faustian bargain of ease of prototyping at the expense of maintainability. They let you prototype your system quickly without having to think too deeply about the core abstractions. In an application space where the core abstractions are hard to determine because the business is so new, this is a good thing. No point in thinking through the abstractions when you are building something radically new.

However, at some point, software becomes more permanent as the business it supports becomes more permanent. At that point in time abstractions become necessary to get engineering leverage. And then the Devil turns on you. Because the lack of abstractions early on make it hard to define them later. Worse, because of the dynamic nature of the language, it becomes hard to impose rules on the abstractions on the programmers. And as the team scales it becomes increasingly harder.

Over time you get a large piece of software for which reasoning about becomes increasingly more difficult.

And then you try and make the dynamic language more structured with more well defined abstractions and rules that the compiler and language and tools do nothing to help you with.

So the choice is always yours, pick a dynamic language and have no support when your business scales, or pick a structured language and struggled with the type-safety.

At the end of the day, you either believe types and abstractions make for productivity or you don’t. If you do, then you agree with me. If you don’t then you don’t. But 30+ years of programming language design has taught us that types do matter.

Baby’s First Cubicle

http://www.littletikes.com/toys/young-explorer.aspx

In this age of technology we think it is essential that children learn about computers as early as possible. This technology can enhance critical and cognitive thinking skills, problem-solving abilities and analytical thinking. Having child-appropriate computers and software in your facility shows parents that you understand the important role technology plays in providing an enriched learning environment for their child’s growth. It’s a hallmark way to set you apart from other childcare facilities.

  • Furniture features:
    • Flat desk area
    • Left and Right built-in mouse pads
    • Bench seat that fits two children and offers storage inside for supplies
    • Two locking cabinet doors
    • Computer wiring stores safely inside ventilated cabinet.
    • Locking castors keep unit from rolling during use.

So poor Nick. Life in the cubicle begins very soon after sentience. What ever happened to schools showing off their playing fields and talking about their sports clubs? Whatever happened to debate teams? In this day and age we prep them young to go from

Young Explorer™

To

The Worst Customer Experience Ever at Fry’s Electronics

Fry’s Electronics is a Bay Area institution. Fry’s has notoriously poor customer service paired with excellent selection and an amazingly great no questions asked return policy.

How bad is the customer service?

When Best Buy set up shop here, they ran a sequence of ads asking local Bay Area residents what they thought of Fry’s customer service. Let’s be clear, they said that their pimply faced sales reps knew more about the products they were selling than the other guys sales reps. They were saying the other guy had set the bar so low, that they could vault over it …

Fry’s Sales Reps Mislead

Many years ago I learned that a Fry’s Electronics rep would mislead you. The sales rep in 1998 sold me a VCR that he said could skip over ads. Stupid Kostadis, what the sales rep meant was that there was a 30 second skip button on my VCR.

Two years ago, I relearned that lesson when I tried to buy a portable AC. The sales rep tried to sell me the product he was tasked with selling even though it was the wrong product for my needs.

Fry’s as a warehouse

The last two years I have used Fry’s as a warehouse. I show up with a piece of paper that describes the precise product I want. I avoid every single sales rep in the store, pick up the product, and then leave. If I have any questions I use my cell phone to look the information up. If a sales rep approaches me I growl at them: Go away. If they try and offer help: I say no, I don’t need it.

That approach mostly worked. Until today.

The all-time low

I wanted to buy some memory for my new 10” netbook. So I write down the specifications, and I march into Fry’s expecting to find the part and leave.

Unfortunately I could not just pick up the memory module from an aisle. A sales rep had to enter the specifications and then fetch me the part. I was ready to turn around and leave but figured that the simple task of entering some data into a computer and fetching the memory should preclude the usual set of Fry’s shenanigans.

But no.

The sales rep enters the information I carefully wrote down, tells me the price and I say okay. But before I sign and she gets her commission, she asks me a question. The question made it clear to both of us that she didn’t have the part I wanted. Instead of admitting that she could not fulfill my order,  the Fry’s shenanigans began.

First she says that:

The memory module does not exist. That the memory module whose specifications I recorded from a memory module being sold on Amazon did not exist.

When I look at her with disbelief and say, no I want this specific part, she turns around and  says that

To get the memory module I wanted, I had to buy 4 GB.

And when I refuse to do that, she starts mumbling stuff. Frustrated, and concerned that her inability to speak English was causing a misunderstanding,  I ask if she could just get me the part so I could read the packaging for myself and determine if I wanted to buy it. Her response was:

No

Okay, so I can’t get the part I want, I can’t look at the part I before I buy it, but there is an excellent return policy.

Wait, I know of a website that lets me get the part I want, doesn’t let me touch the part before I buy it, and has an excellent return policy …

Hmm…

And so 15 years later my sordid affair with Fry’s is over. I will never buy anything from that store as long as there is the option to buy it from Best Buy or Amazon. And if it only exists at Fry’s, I will live without the product.

twitterblog rides again

After almost a year long hiatus, I got my python program twitterblog to work again.

twitterblog lets me take a twitter time line and directly dump it into my typepad blog.

There were a couple of limitations of the original software, which are now fixed, and on top of which I added a couple of new features.

So the new features are the ability to specify the title from the command line with the –T option and the ability to specify an end time for a time line so you print out the tweets from 4 days ago, and only four days ago using the –e option.

I also fixed a bug related to how tweets that contained non-ascii characters were being treated. Normally twitter returns nothing but text, but if the text contains UTF-8, the rather simplistic parser I had would puke.

Now if I detect an error while parsing, I’ll do something semi-intelligent, but at least no longer crash.

Python continues to impress with it’s syntax and it’s wealth of libraries.

Schweet… 8 CPU’s

Okay so they are virtual and not quite real, but hot-doggedy-damn.

I saw 8 CPU’s in Windows 7 viewer and that was just cool. Almost 10 years ago I thought it was super cool that I had an Octane as a workstation with TWO processors, and here I am with my new shiny laptop and it has EIGHT.

That’s cool.

Drunken sailors and web ui design.

So it’s really cool that we can use dynamic web technologies to have user interfaces that allow for maximum configurability…

BUT THAT’S NOT GOOD UI DESIGN.

Just because you mr. web designer decided that I need to be able to click and remove every UI element (so that I find myself trying to figure out how I lost the all important panel) doesn’t mean you should.

Building UI elements and forcing me, the VERY BAD UI DESIGNER to figure this out is an abrogation of your responsibility.

Yech. I feel better.

Apple has learned nothing and neither have their fan boys

Over the last 30+ years, what has become apparent is that it’s all about the applications and not about the hardware.

In the 1980’s Apple pissed away it’s lead because it never knew how to court developers the way MSFT did.

And in the cell phone market, Apple has shown how to make a market for applications, and MSFT intends to demonstrate that they know how to make money for application developers and how to treat application developers.

http://www.businessinsider.com/reality-check-most-people-dont-care-about-how-apple-treats-developers-2009-7

The good news for Apple is that the reasons this backlash exists are completely meaningless to most normal people. That doesn’t make it right. But it should not affect peoples’ purchasing habits or their enjoyment of the iPhone’s standard features.


So it goes.

20 years ago the importance of applications was lost on Apple. More importantly the importance of a rich development community, and apparently 20 years later, the lesson is still lost.

Am I Mac?

So after almost two years of irritating ads by Steve Jobs and Co, I finally bought myself a mac-mini. Well, my wife bought me a mac-mini.

And it’s kind of fun.

New software to learn and what not.

Not sure if I am mac, yet.

Privacy and Cell Phones

Nude pics in phone lost at McDonald’s get online

FAYETTEVILLE, Ark. – Here’s some food for thought: If you have nude photos of your wife on your cell phone, hang onto it.

Phillip Sherman of Arkansas learned that lesson after he left his phone behind at a McDonald’s restaurant and the photos ended up online. Now he and his wife, Tina, are suing the McDonald’s Corp., the franchise owner and the store manager.

The suit was filed Friday and seeks a jury trial and $3 million in damages for suffering, embarrassment and the cost of having to move to a new home.

The suit says that Phillip Sherman left the phone the Fayetteville store in July and that employees promised to secure it until he returned.

Manager Aaron Brummley declined to comment, and other company officials didn’t return messages.

 

D’oh.

With 8 GB of storage, a reasonably good camera, and a desire to photograph everything for posterity, this is going to be happening a lot more frequently than we would like.

I believe being able to remotely wipe a phone of all contents is going to be a key feature of cell phone’s going forward.

And sooner rather than later, folks are going to learn the value of encryption and strong passwords.

I wonder if we’ll see biometrics make it into phones?

And the new smart phone champ is the Nokia E71

Oh my God.

I have been suffering with the my ATT Tilt, henceforth known as the, Piece-of-shit Cell Phone.

I had no idea how bad the experience was. Well maybe. My wife would sneer at my bumbling attempts to do anything with one hand, the absurdly short battery life, the large but mostly useless keyboard, but I faithful to the Microsoft cause stayed the course.

No more.

I am in love.

The E71 battery life is ungodly. No, I don’t do it justice. It’s Phelpsian.

The one-handed use of the phone is Boltian. Try to use an iphone or windows mobile with one hand. Go ahead, try it. Even better, try using an iphone with one hand while holding groceries at the farmer’s market. I defy you to try it.

Failed, didn’t we?

Still trying to figure out where the “slider to turn it on” is? Still trying to figure out where the number 5 is on the keypad, aren’t we?

And the keyboard. Oh that keyboard.  I have these huge fingers, these ridiculous, stubby fingers that my genes bequeathed to me. And yet this keyboard works. Reviewers who tell you that the keyboard is too small are weak-willed, sniveling, cover-your-ass types who can’t admit that the keyboard works for people with big-hands because they feel they’ll sounding like Nokia fan-boys. This keyboard works for me, and I have hands that are ~12 inches from thumb to pinky, and approximately ~10 inches from the base of my palm to the top of my index finger. And I am not known for my dexterity.

And it’s even stylish. Yes, the Finns have made a stylish phone. Unbelievable perhaps, but true.

And of course, since it’s a Nokia phone, the audio quality is surreal, the device will only break if you throw it under an on-rushing train and frankly it just makes you good holding such a well engineered device.

Okay it’s not a perfect phone. The darned software doesn’t match the glorious experience of the phone.

For the corporate world, you really need Goodlink to be happy and unless you are willing to endure some entertaining phone hacking you’ll have to wait for Goodlink version 5.0. You do need to buy a whole bunch of software including an IM client.

And the S60  need a fair bit of customization until the UI experience is usable.

And yes, the iphone user-experience with two hands is superior.

But oh-my-God, I am in love.