Apr 22 2009

H.G Wells on NYT’s Maureen Dowd

Published by David HM Spector under Internet, Life, Web2.0

Lots of people are scratching their heads over Maureen Dowd’s NYT hack job on Twitter. Really, not a lot of analysis is needed: H.G. Wells had her pegged almost a hundred years ago…

New and stirring ideas are belittled, because if they are not belittled the humiliating question arises, “Why, then, are you not taking part in them?”

No responses yet

Apr 02 2009

iPhone Dev Tips: Renewed Cert Requires Updated Provisioning Files

From the department of “What should be really obvious” but isn’t….

If your Apple iPhone development certificate expires you not only need to get a new one, but you MUST regenerate all your MobileProvision files.

Unfortunately Apple doesn’t mention this anywhere obvious on the Developer Portal, and to make things more interesting, your old and new certificates will be shown in the list of certificates without any indication of which ones are old/expired and which are your current active certificates.

If you don’t update the provisioning files, XCode will tell you it can’t find a mobile provision file for your developer identity… even if you have installed a new cert. This makes sense given the provision file is tied to the cert, but will probably have you chasing your tail for a bit in the heat of development if you didn’t update all your provisioning files when you updated the cert.

No responses yet

Jan 09 2009

Perception is 98% of everything… or how to get out of a recession

Published by David HM Spector under Misc

Maybe Phil Gramm, the ex-senator and formerly John McCain’s tone-deaf economic advisor was on to something after all.

We’re now firmly in a “recession” which is a term that in reality describes a fear condition that causes people to not spend, companies to fire employees and whole economies to tank.

The only way out of a recession is to spend, and spend a lot — in fact the way out of a recession is to spend like you’re not even in one. So, perhaps Phil Gram was on to something in his own twisted way - we need to stop whining - all of us - and start innovating, creating and - yes — spending. Special note to VCs, this ESPECIALLY applies to you: the faster you get companies of the ground the faster we lift all the boats and get our economy going. Think of it as your patriotic duty.

I write this as I am at about 38,000 feet on my way to San Francisco to be with my mom in her last days and hours … I am trying to think what she would tell me about the recessions she’s seen and the great depression she lived though… and I am sure that she’d tell me as terrible as it all seems, the only way out is forward.. anything else is to give in to fear, and to refuse to believe that we are the solution to all of our own problems .. no matter what they are or how daunting they seem.

No responses yet

Jun 30 2008

Move over CSSEdit…

Published by David HM Spector under Misc

I just found Xlye Scope from CulturedCode. Xyle Scope is to web page, layout and CSS what Instruments is to XCode. Wow.

I’ve been using CSSEdit for a long time and its been really useful. It lets you look at a web page, and turn on an “X-Ray” mode which lets you see what CSS elements are formatting an element which has helped me grind through a lot of CSS issues. The one thing that CSSEdit lacks is the ability to get a live view into the web page you’re working on as it appears as a DOM tree with its actual content embedded into the CSS.

XyleScope-Zeitgeist.png

It must be a programmer thing (web designers I know never have this problem) but trying to nail down a CSS problem is often much, much harder than squashing a programming bug because CSS seems to arbitrary and quirky. I have spent literally days messing with CSS to try to understand why something won’t render right only to discover that it’s a nesting problem or I used “class” where I should have used “id”, etc. Xyle Scope lays bare exactly what’s going on in my page layouts. (yay!). Very nice bit of software and cheap too, only $19.95

No responses yet

Jun 20 2008

Yahoo’s “Exodus”

There has been much moaning about the departures of really well-known names from Yahoo. Now, I don’t know any of the folks involved, but if you compare all of the criticisms about what Yahoo has not been doing over the part few years in terms of innovating and getting new products out and or having, as so many analysts have complained even a coherent strategy for what it wants to be .., one is forced to ask “Well, who is responsible for this..?” The working engineers? Nope. Jerry Yang? Nope. It’s the very people who are now leaving. Yahoo’s direction is set by some of these very high-level execs.. they are the ones that tell the executive team and the board of directors what Yahoo can deliver and give the marching orders to the engineers who make things happen.

If this were any other non-Internet company, these departures would be seen as a good thing — a chance to re-vitalize a company. It’s no different here … Yahoo is filled with really smart people with good ideas. I’ll bet most of the good ideas waiting to capitalized upon are not at these executive levels, but are down at the product development/management and operations level. Hell, I have a few dozen product ideas that could make Yahoo a few billion in the next year (of course trying to get an interview at Yahoo is impossible - Lord knows I’ve tried…).

Fortunately, the whole Microsoft merger thing seems to be off the table - it would have the worst possible outcome. Yahoo doesn’t need more micro-manging bean-counters, it needs to, in the words of former Citibank Chairman John Reed, “let a thousand flowers bloom” and set its people free to unleash as many new products and ideas as it can possibly deliver. Let the users see what Yahoo can give - they will find their own uses for them and in doing so create new aggregations, new mash-ups, and new marketplaces. Look at the ecosystem that is evolving around Twitter - despite its well-known uptime issues; there are boatloads of really cool applications being developed around it.

If Yahoo really wants to re-start and right itself, it needs to bring in some really good technology managers (like me!) from the outside who are willing to listen to all the talent they have inside and help the Yahooligans create great new products by giving them the support to do so, by getting the hell out of the way and stopping the micro-managing.

No responses yet

Jun 20 2008

Dear Twitter… are you trying to tell us something..?

Published by David HM Spector under Internet

Paging Dr. Freud…

Ever notice something interesting about Twitter’s “FailWhale”..?

FailWhale.png

All the little birdies are not all flying in the same direction. Is someone subtly commenting on what happens when twitter is down or over capacity..?

Clearly there’s message in there.

No responses yet

Jun 05 2008

Who is Gary Krakow? Why is he off his meds?

TheStreet.Com has an add interview with some hilarious tripe about how Apple/Jobs needs to “bite the bullet” and “license WindowsMobile or RIM’s Blackberry” code.

This guy is clearly in need of psychiatric help. Like now. I mean he’s either had a break, or he’s the most transparent and disingenuous shill since Rob Enderle.

Either way TheStreet.Com does a terrible disservice to its readers/views by putting this tripe up.

No responses yet

May 28 2008

Just in from the Future: Delicious Library 2.0!!!

Published by David HM Spector under OS X, Software

[update! Figures Apple would make me eat my words -- they just released MacOS X 10.5.3 at about 1:30PM ET. Did they do it just so Delicious Library users would get the full benefit of the graphics speedups? I hope so :) ]

Yay! My favorite library application is now even better — Wil Shipley and his band of amazing OS X developers just released Delicious Library 2.0. With eager anticipation my mouse flew to the download link. I quickly popped it into my Applications folder and double-clicked its silky smooth bar-code scanner icon and … found that Wil & Co. are so far ahead of the rest of us that they released the software from the future where 10.5.3 is generally available:


Okay, truth be told I am an Apple developer too (and have been since the 1979 and for the Macintosh since the ADC formal Apple Developer program started in 1983) — I have the 10.5.3 seeds (I don’t run them on my main machine however).. and everyday users who are going to be downloading Delicious 2.0 in droves certainly don’t have 10.5.3 yet. And, unless Apple is planning on a surprise software update that includes all sorts of stuff I am pretty sure will be part of or at least related to product announcements, they won’t get it until just before or after the start of WWDC on June 9th. Hopefully this won’t generate lots of support headaches for them given that it will, inevitably, confuse the hell out of a lot of users.

This little support faux-pas not withstanding, Delicious2.0 is a work of art. In my development fantasies I hope one day to have the UI design chops of Wil Shipley.

No responses yet

May 12 2008

Failure to Adapt Considered Harmful…

Gustavo Duarte, a programmer and blogger in Colorado wrote a very provocative article recently entitled Language Dabbling Considered Harmful where he reasons on why working, professional programmers should, more or less, stick to the languages where they have been successful and not try to get involved with new languages that come around:

Learning new programming languages is often a waste of time for professional programmers. It may be a fun waste of time (i.e., a hobby), but it’s a waste nonetheless. If you do it for pleasure, then great, but profit is scarce. Pointing this out among good programmers is heresy: even the pragmatic programmers, whose teachings are by and large excellent, suggest we should learn one new programming language every year. That’s rubbish.
— Gustavo Duarte

In response, I suggest two great quotes, the first comes from Computer Security World in 1977:

Within an EDP Center, programming languages should be standardized. If it’s COBOL, PL-1, or FORTRAN, so be it. And the bright young mavericks with their ALGOL, PASCAL and god-knows-what-else will just have to conform.
— John M. Carroll in Computer Security, 1977

Amazingly, Carroll is now a Professor of Information Sciences and Technology at Penn State. I’ll bet he’s sorry he ever uttered those words. They seem so incredibly narrow minded in light of what we know about IT as a profession, don’t they..? Imagine what the world would be like if anyone had listened to him….

<shudder>…it’d be pretty darn grim…

The second quote is by H.G. Wells :

New and stirring things are belittled because if they are not belittled, the humiliating question arises: ‘Why then are you not taking part in them?’

Together, these two quotes define the polar extremes of computer science, IT as a profession and the gestalt of the Internet itself: One wants to stop the world because change (and new ideas) can be hard and doesn’t always lead to a new and better result; the other wonders why someone would ever be swayed by people who belittle those who dare to try to invent a potentially better future.

Duarte seems like a smart guy; but he’s really off in the weeds on his general thesis. As professionals in IT (as well it should be with professionals in any area) we adapt or we die. I know which side I’m on…

No responses yet

Apr 30 2008

Unlimited CPU Power, Endless Memory and Syntactic Sugar, or “How I Learned to Stop Obsessing and Love Scripting Languages” (*)

*

 Apologies to Stanley Kubric and Dr. Strangelove.

This is sort of like an intro to some 12-step program..

Hi, I’m David, and I’ve been a computer language bigot.

There. I feel better already.

But seriously, I’ve been a programmer for a long, long time. Not quite as long as my friends Richard, Pete, and Bill who have between 14 and 22 years on me, but even in Internet years, my ~30 yrs of professional software work is not a small amount of time. In all that time I’ve had some very strong views on programming languages: I loved compiled ones. You know, like the Algol family that includes, Algol, PL/1 C, Pascal, Modula, and, tho’ not my fave’ by any stretch, even Ada. Of course Fortran is a great language too. COBOL and I never really got along, not because it wasn’t useful, it was just too sleep-inducing.

Assembly languages were fun too. My first assembler was Macro-36 on the PDP-10; I was also fluent in 6502, x86, and 680×0 too.

These are all real manly languages. They take work, you have to understand the metal. yadda yadda.

As a Systems Programmer and system admin for many years, I also learned to live with, and sometimes even like Perl, which though not a compiled language is probably one of the most useful tools on the planet if you’re writing accounting packages for your boss or you need to write lots of quick and dirty little tools.

In the 90s and forward I, like most people, dove into Java which, for all intents and purposes, is a compiled language — the JiT runtime in every modern Java environment generates native machine code. Java is a pretty serious language. I use it a lot. It’s powerful, has more connections to more things/services than most older traditional languages and, unlike C++ is pretty consistent from platform to platform with regard to what works and what’s going to bite you in the butt.

With the return of NeXT.. er, I mean Apple I also got into Objective-C which is very, very elegant in it’s terseness and even though it’s only really useful on one platform (IMHO the world’s most elegant user experience and my personal fave’ having been an developer for all things Apple since the late 70s) it’s a great programming environment and I’ve learned a lot from it.

Well, I resisted all things “scripty” (read: Python, Ruby/Rails, Groovy, etc) since they became the rage because there was just something fundamentally wrong about these little languages and their diabetes inducing amounts of syntactic sugar, an their utterly horrible performance on all but the most up to date machines. Of course with Python there’s that whole silly white-space issue which I still detest, but am learning to overlook. ..but I digress…

Well… I’ve had a “come to <pick your deity>” moment. CPU speeds have leveled off for the moment, but the number of cores and cache available to your j-random machine keeps getting bigger. Memory isn’t costing $500/mb like it was in the 80s and well.. I guess my great concession is: “so what if I am burning CPU through cycles like Paris Hilton blows through cash..?”

I’m finding that unless we’re all forced to go back to PDP-11/04s it just doesn’t matter. I am sure if several of my old professors like Robert BK Dewar and Michael Overton saw this they’d start throwing up and never stop, but… this is the difference between an academic exercise and the reality of the everyday computing world where PoGE — “the Principal of Good Enough” — rules. People optimize where there are bottlenecks not just becauze they can.. and this is, now finally, as it should be. Don’t worry, be happy: computer power is bascially free. This is probably the great conclusion of the scripters versus the compilers … (We won’t talk for now about the power required to actually run those data centers where these machines live — different conversation.)

One thing I have decided is that I am out of the language wars. Java, Ruby, Python, Groovy, Scala. What. Ever. Bring’em on. The advent of projects like jRuby, and Jython (these are versions of Ruby/Python that run inside the JVM) are probably the biggest boon to software development in years - with these tools you get the best of ALL of these worlds, all at the same time: you get access to Java’s deep and wide libraries/packages for connecting to just about everything in the enterprise and corporate universe(s), and with all the sugary goodness of Ruby and Python (and Groovy, scala, et al) you get really, really fast iterative development cycles.

The really nice thing is that you can scale from tiny little apps which are fast to cook up and and run on a single server (I am working on a small financial service app for a client in Ruby/Rails right now that will only ever support a few hundred users) to enterprise scalable/supportable apps with the same code. Just change the runtime .. e.g., native Ruby for tiny apps, jRuby when you need to scale up.

I think the folks in the scripting language camp (and the Java camp too) need to get over themselves a bit more tho’ ..Hybrid apps are more and more going to be the way to go. Use the right tool for the right job — that doesn’t mean you can’t do any particular job in any of particular language.. it means, to steal a Ruby-ism: “DRY” — Don’t Repeat Yourself. If there’s a Java package that’s already available that does heavy lifting for you in your project: use it! Don’t reinvent wheels… who has the time for that any more? Ditto for the Java universe where constructing UIs is like taking your own appendix out with a rusty beer tab. Ick.

What makes, for larger apps, this hybridization model really scale is that if you add in Terracotta, you’ve got distributed clustering basically for free.

Oh, did I mention you can do all this wonderful stuff in IDEs that would have costs you thousands of dollars just a few years ago, but are also free like Eclipse, NetBeans, and even XCode? (IDEA is great, but it’s ~US$800…) I mean what a great time to be writing software …

I think the takeaway for software developers of every stripe is: being an agnostic polymath is the way to go. What’s another language? ~10 days of learning it and it’s another arrow in your quiver. All of these languages/tools have their warts.. use what works in the best context to get the job done in the most supportable way.

The take away for management everywhere is: if you’re not a programmer, don’t try to dictate how your programmers work. You should insist systems/products be 1) well documented, 2) supportable (i.e., they scale and have appropriate management interfaces and tools) but don’t get hung up on the languages; you’ll only hurt your own development efforts if you do. Oh, and of course, you’ll be giving an opening to your competitors who are not so hung up on these no-longer-relevant details…

No responses yet

Older Entries »