Mike Levin SEO

Future-proof your technology-skills with Linux, Python, vim & git... and me!

Blogging My Life Back on Track

by Mike Levin SEO & Datamaster, 08/28/2008

This is a blog entry I had to write. They come few and far between like this. But I have continuity-of-thought that goes back to when I first picked up my first journal in 1988 when I was 18 years old and realized what I was doing with these was plotting my course. I had just gone to work for Commodore as an intern, was in my first year of Drexel University, was moving out of my childhood home, and lost my lifetime dog. Yesterday was my 38th birthday. I’ve been keeping journals now for 20 years. I’m at a typical crossroads in my life, and am doing a similar course-plotting journal entry, but with the way the world has changed so much between then and now, I’m doing it publicly through blogging. I’m in New York now instead of Philly. I’m married to a wonderful woman, am in a tiny two-bedroom apartment in Inwood (upper Manhattan). I have three cats, a new puppy, a turtle and fish. My life is back on course after years of family-related distractions. I’ve symbolically drawn the line in the sand, separating the lives of people around me from the life I’m leading, designing, crafting, building for myself. I’ll be staying in New York and in the online marketing industry, that’s for sure. And I’m charting my next steps. I’m back in the “Agency environment”, juggling work for other peoples’ customers, but bursting with entrepreneurial ideas. I can’t sit on top of these ideas and let them go stale, ruining the billion-dollar idea as I did with blogging, social networking, agile frameworks, content management, and many other things I implemented first, but in-house-only. Instead, I want to bring the full value of these ideas to bare on both my employer’s clients AND a semi-independent venture that carries on the inventive momentum I started with HitTail.com. But I have to make 360i extraordinarily happy in the process—actually performing and overseeing client work. This is a challenge, that can only be resolved with the correct critical insights, the time to develop the thoughts, and the discipline to make everything in my life somehow aligned to following through. The thing I do MAKES CLIENT WORK EASIER, but has something larger in mind. Although I impress everyone with my talk, I always feel the need to walk-the-walk. You must learn to walk the walk, so you can talk the talk. But walking the walk while working in an agency on client work is tricky. I have to do it FOR THEM, but not squandor my time on busy-work. An ex-boss of mine used to talk about this feeling as solving simultaneous equations—and that’s exactly what I’m doing. I’m now driven to public blogging to provide a bit of self-discipline to pull off this considerable challenge. I look back to past experiences to figure out what made these break-through’s happen. Writing! Writing as if for a public venue helps immensely. Knowing that an audience is going to be reading, you’re forced to think through and organize your thoughts, and in doing so, you organize your mind. Of course, getting organized comes before everything—and organizing your mind is the highest priority. Unfortunately, you can’t just say “which ideas are best” and shove stuff around in the attic of your mind, like Sherlock Holmes would say. Instead, you have to tease it out with lots of writing and revision. It’s a process. You must cause churn. Then, you have to recognize the important bits as you go. You have to test your thoughts, and let the writing, testing, writing, testing feedback loop kick in. You construct a vision of the world that is just-off-reality, then shape reality to fit the vision. To work at that level, you have to become addicted to your work, with it as interesting as just about anything else going on in your life. The real-time flow of search hits shown by HitTail may be one of the best examples of me deliberately making addictive systems, so that I spend time looking at the right things. Now, with “webserver push” technology arriving (Comet), addictiveness will be able to be brought to new levels in Web apps. But I have to start somewhere with my new work, so starting with writing in Google Docs is the way to go—Document for writing like this, and Spreadseet for data. In fact, Google Docs has removed an huge desire to develop Web apps, because Google Spreadsheets takes care of most of the fundamential database/sharing needs. Need an app to track that? Just make another spreadsheet—accessible anywhere, anytime, and sharable with anyone with some degree of permission-control. My next step is the missing pieces I still need to do my job stunningly well here at 360i and which suit my entreprenurial future, and which offer competitive advantage that Google can’t just “Lab” away with a new invention. Examples include writing webcrawlers that do my bidding, and writing agile API middleware that consume multiple services, making the result vastly more accessible and useful than any single service could. But to walk the walk, I now actually have to learn to walk again, because I was stung by being a VBScript guy (though working with SQL Server has been a pleasure), and am now faced with the old technology-selection task. My head is full of philosophy from Paul Graham, Joel Spolsky and Yukihiro Matsumoto. I have 15 years of professional experience. I have the “elite” feeling of being an ex-Amiga computer user, and have seen the advantages and downfalls of the path-less-traveled. I belive now the trick is to use the mainstream tools, but to use them more intelligently and creatively than anyone else. Also, I need 100% control of SOME equipment—not necessarily the client’s equipment, but I need for example my own experimential, always accessible Apache server running. Walking the walk these days is all about Linux and Apache. There’s an awful lot of PHP programming going on, and I’m sure I’ll do a bit of that in good time, but I won’t lose points steering clear of becoming a PHP jockey. There is another: JavaScript—on the client AND on the server. To help, I today bought two O’Reilly books: Apache, The Definitive Guide, and Linux in a Nutshell. It’s time to really become a Linux/Apache guy—in addition to JavaScript. In fact, to fill in a bit of Java which has been a longstanding bane of mine, I’ll actually use server-side JavaScript under Rhino. Interestingly, this is actually running JavaScript on the Java Virtual Machine (JVM). That way, I’ll reinforce my JavaScript learning whether I’m doing fancy client-side stuff, or the occasional server-side stuff. For the most part, I have a vision of server-less services, running mostly out of client-side JavaScript. But a server will inevitably be needed. I was sorely tempted to go with Ruby for that sort of programming, for it’s consiseness, forced object-orientation, Rails framework, and general enthusiasm. But JavaScript is like pee in a pool. You have to learn it anyway, and even as the Web matures and browswer fundamentially change, chances are (as we learn from things like the Adobe Flash ActionScript implementation), JavaScript just isn’t going to go away. We’re talking at least a 10-year timeframe, and that makes it a safe place to develop a new set of professional skills. I take great joy in the actual performing of the work, in sort of a performance-art way. I like shrinking the cycle between learning and implementing. That’s the essence of HitTail, and it’s sort of what I do professionally. Long before Ruby on Rails, I programmed an agile framework under Active Server Pages and VBScript. It wasn’t nearly as flexible or object oriented as ROR, but it got the job done, and combined with an XMLT-based content management system and tracking systems that were precursers to HitTail, I was friggin’ powerful. Ask me anything, and I could get it done: bam, bam, bam! I was in the zone—totally at one with my tools—ones that I created. I was able to acheive this on Microsoft IIS with ASP Classic and SQL Server. I tried in the past to switch to both Java and .NET at different times, but neither one stuck. But now, everything is thrown in the air and re-shuffled. Without having Microsoft systems to maintain, there’s no way I’ll be picking up the Microsoft torch again with .NET. I’m not a career programmer, and the attempt to become a hardcore C++ or Java programmer has already defeated me—which is disappointing, because in my heart that’s the sort of software development I’d love to do (iPhone apps, and all that). I only have the mindset and dire need to do ad hoc programming and mash-ups. So, JavaScript it is, with a sprinkiling of Java server issues, because the most mainstream way to run JavaScript on the server these days is ironically through Java itself. I even bought a fitPC microserver, so I can control every detail, and have an optimized install of the Gentoo Linux distribution installed on it. And so the journey begins… again.