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.

One response so far

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

Apr 30 2008

Apple Releases Java 6 for Real. Finally.

Published by David HM Spector under Misc

After several “developer previews” Apple finally releases Java 1.6 yesterday.

It’s only for 64bit Intel machines machines which is kind of a bummer for PPC folks. I hope they decide to remedy that soon.

It can be found on Apple’s Software Download pages.

No responses yet

Feb 11 2008

Apple Ships OS X10.5.2 …makes 3rd party memory disappear?!?!

Published by David HM Spector under Misc

I just installed 10.5.2, before I started the installation, I had 12GB of memory, now I have 8GB:


MissingMemory-3GHzMacPro.png


My 2GB DIMMs have become 1GB DIMMs (the things listed at 2GB are Apple memory).

Oh, Noes!! DON’T WANT.

Apple — please fix!

No responses yet

Jan 25 2008

Lies, Damned Lies and Fall Guys…

Published by David HM Spector under Wall St

Société Général (SG) announced yesterday that a ”rogue trader” had racked up US$7.2 Billion in losses.  The NYTimes reporting of this story reported that this “trader” identified as Jerome Kerviel had “managed to evade multiple layers of computer controls and audits for as long as a year.”  Kerviel is described as a “mid-level” employee who was, apparently according to SocGen, a technical and criminal mastermind who single handedly managed to pull off the largest bit of trading fraud in history.

Let me get this straight, a trader was able to get around the entire firm’s auditing and compliance infrastructure and not be noticed while racking up a 7 BILLION dollar tab?   Years ago, like back when Barings Bank was taken down by a ~$1Billion blunder by Nick Leeson  in 1995, the degree of automation was a mere fraction of what it is today — mostly because of Leeson we have the depth and breadth of regulatory and audit controls we have.     

To say it strains credibility is a gross understatement.  If SG didn’t have a full set of automatic auditing systems in place they were mostly likely in violation of securities laws, not just here in the US, but most certainly in the EU as well. Having worked on Wall St. for many years, I’ll bet they had quite a complete auditing system in place. It is impossible to believe that $7.2 billion just “went missing” without the complicity of many, many people at SG. It should be obvious that what we have here is a fall guy… it will be rather entertaining to watch as the investigation unfolds as we see which heads get lopped off over this obvious and not-very-creative lie…  

No responses yet

Next »