Category Archives: Uncategorized

Google+ grows to 40MM

Google+, or as I call it–Facebook is not about the technology, has grown to 40MM users.  That’s incredible, but I gotta imagine the staleness must be off the charts.  I haven’t touched my account in months.

In fact, the only Google+’r I know who is active on that dang thing is Bill Gross of Idealab.

What do you think?


RIP Steve Jobs (1955-2011)

Yesterday was a rare rainy day in Southern California.  I was driving home in my cheap rental car (my car is in the shop) and I started flipping through Twitter on my iPhone as I sat in traffic.

I saw the headline and my heart sank, “Apple confirms former CEO and co-founder Steve Jobs has died.”

I knew it would happen soon, but I still didn’t want to read those words. He left us too soon.

I was first introduced to the PC with Windows 3.0.  My dad’s work had provided him with a slick Compaq laptop.  It was futuristicly thin, with a bright screen filled with vivid colors.

Meanwhile, another computer story was being rebooted.  Jobs had been out at Apple computers for sometime.  Macs were those other computers that teachers had.

I connected w/the second tenure of Steve Jobs when I was visiting a friend at Chapman University in Orange, California.  In their office they had these bright-colored pods.  It was a computer and monitor built into a single device.  They called them “iMacs”.

What was this?!  It got my attention immediately.  The ad campaigns rolled out thunderously with pictures of John Lennon, Muhammad Ali and other culture creators with their soon-to-be-famous catchphrase “Think different.”

It was a challenge, I thought.  Microsoft had conquered the personal computer space and this little computer company was telling us that we were all lemmings.  If John Lennon were alive, the ad said, he would be using a frickin Mac!

After a few years in software development Macs became more and more prevalent.  The graphics guys liked them.  They said Photoshop worked better on a Mac.  Then the writers started using them.  Suddenly there was two classes of people in the workspace: the creative people and the cube-dwellers.

Then came OSX.  And as a developer, I was thoroughly intrigued by one idea: it was built on Unix (Well, BSD).  For years I had been using PuTTy, the desktop SSH client.  With a Mac, I’d have native shell access.  My apps would be developed in an environment much more like our servers (we had all given up on Windows Server by 2002).

I bought my first Macbook Pro in 2004.  All the developers that worked with me laughed at me.  “You just paid twice as much as I paid for this custom-made computer I built at Fry’s.”

I didn’t care.  I wasn’t buying a Mac to look cool, I really believed it would improve my development ability.  And it did.  Soon I was operating on multiple terminal windows, deploying local servers from native shell scripts.  The eyeballs started peering over the cubicles.  One by one, Macbooks started appearing in the office.  People were telling the IT folks, “I’d rather buy my own Mac than use your free PC.”

Desktop support soon found themselves twiddling their thumbs.  Nobody needed their help anymore.  There were no more, “My computer is running slow,” phonecalls anymore.  There was just…work.

I have created websites, software, music, movies, books, and more on my Mac since 2004.  It changed everything.

Mr. Jobs, thank you for your innovation, your influence, and your example.

~Sap


The In’s and Out’s of GitHub

GitHub is the new kid in town and is steadily gaining dominance as the developer’s source-code repository of choice.  It’s funny how quickly things change.

I remember, not to sound old, dumping Microsoft’s Visual Source Safe (VSS) over a decade ago in favor of the Concurrent Version System (CVS).  The idea blew our minds: instead of checking out code, you work on an entire “branch” and merge ALL your changes at once.

It was only a handful of years ago I was fighting to get Subversion deployed in the shop of a large real estate company in whom I was consulting.  They had entrenched themselves with IBM’s outdated Clear Case solution–a solution that required hundreds of thousands of dollars in manpower and license fees.  My recommendation did not make me popular with the legion of administrators who had made an apathetic legacy out of overseeing gigantic parallel merges using Clear Case’s laughable MAGIC EYE tool.

Why all the fuss about GitHub?

I’m not an expert yet, but there are a few features that really excited developers.  One of the biggest is the ability to clone a repository.

In Subversion (SVN), developers can work off a local copy and commit their changes into the remote repository.

Contrast that to GitHub where you can clone an ENTIRE repository to your local drive.  You commit check-ins, not remotely, but into YOUR clone.  Then you push your clone back up to the remote system.

Second, GitHub leverages private/public key encryption for authentication.  Subversions user/password scheme was too proprietary.  Now the same public key can be used for accessing servers via SSH and committing changes from your cloned repository.  No additional passwords to remember.

In short, I guess the moral of the story isn’t how great GitHub is but how great evolution is.  Software is always changing, growing, and learning from its mistakes (and successes).  Don’t be like those Clear Case administrators who want to dig their heels into a tool and build their resume around one piece of technology.

I am not an expert of a single language or technology, I am trained in the art of FINDING SOLUTIONS.  

The core calling of a scientist is to be curious.  Likewise, for an engineer, the fabric of our DNA is our love of problem solving.

What are your thoughts on GitHub and other SCM tools?


Coupon Tracking

How would you like to work with us on our first open-source project?  Coupzaar is a web-based application for collecting, tracking, and sharing coupons.  It is written in PHP and is hosted on Sourceforge.  For more info, see our Sourceforge hub!

https://sourceforge.net/p/coupzaar


Magento’s Varien_Object nightmare!

If you haven’t already figured it out, Magento can dynamically handle setters and getters on any Object because all objects are Varien_Objects, by inheritance. This can make debugging your Magento modules tricky sometimes since you can’t put a breakpoint on a dynamically invoked function.

Oh PHP…how did you become the winner of the web?

Here is the best article I’ve found on the subject.


Follow

Get every new post delivered to your Inbox.