A Respect for Cross Platform Developers
02.52.30 - Mark
I long time self declared geek, I'm a little surprised I've never really sat down and learned C++. I mean I've played around with a variety of programming languages, and I've had a copy of CodeWarrior for the Mac for a decade or so. So while I remember doing some "Hello World!" and tutorial work on it, I'm only now learning it between I'm taking a college course on it. While a lot of the basics are similar to the PHP and Arduino I already work with, the fact is I'm learning a bit more than I expected.
Specifically, as a happy Mac user, I'm comfortable with banging away in Apple's Xcode. Unfortunately, the course prefers Microsoft's Visual C++ Express, which no, does not play well with WINE like many other Windows apps do. So while I'm quickly picking up on the syntax of C++, defining my own rosetta stone comparing and contrasting the languages I know, I'm also working on the art of cross platform development.
Ten years ago when OS X was new and shiny and Macs still ran PPC processors, cross platform development was pretty rare. Only a few, like Adobe, Blizzard and Bungie would actually make an effort to straddle the fence. It always annoyed me that only the big (or at least Mac based ) companies would go cross platform, after all they were almost all using C, C++, maybe some PASCAL, so why not cross over? Was the Mac really that daunting?
Well, while I still don't considering the Mac daunting, translating even a "common" language can be a gauntlet. While I'm not going to claim to be a programming prodigy, it only took about an hour to read over the requirements and bang out a working program in Xcode. Add another hour to write up the documentation, and it was time to handle it on the Windows side. At which point I spent another 90 minutes trying to figure out what the windows side needed, rereading my code and googling the error codes. In the end I had repeatedly ignored the rather simple solution, one that probably should have been required on the Mac side, but the fact is, the people who manage to port software deserve a lot of respect, especially those who add linux into the mix...
Grepping though things
02.01.09 - Mark
I've been aware of GREP for years. I sort of remember it as a feature in BBEdit Lite, the great program I really learned HTML with, but always made do with the regular, plain english search and replace commands to fix problems. That stayed true when I finally moved to TextWrangler (after it was released as freeware to fully replace BBEdit Lite).
I also knew GREP or sometimes referred to as Regular Expressions, was in Perl and PHP, saw it on XKCD, both as a comic and as a t-shirt. Probably knew it was available at the command line of OS X and Linux. Those references and bits of knowledge made me aware of it, but it wasn't until earlier this year that I was given a task that I probably could have hacked though it with traditional search and replace, but needed enough changes made that I felt it would probably take less time to learn how to use a bit of regular expressions.
Regular-Expressions.info helped me a lot, but it still took a little longer to figure out than I had guessed. However, it was well worth the effort, over and over the GREP has proven to be very helpful, and while I'm not a master of the syntax, I can do a bit of damage with it in Textwrangler without a cheat sheet.
About two weeks ago, I stepped up to using some grep in a PHP script.
I've been off and on reading Rockwood Comic for years, but it's lack of an RSS feed sort of pushed it back further. The odd thing is I remembered a bit about scraping websites to create RSS feeds. While there are plenty of tools out there that will do the same thing, part of me figured it would be simpler, more precise and up to date, and a fun little challenge to create it myself - at least for that comic site. Plus once it was kicking around in my head, I knew I'd be using GREP in PHP to dig out some of the content. Once I think it's working a bit better I'll think about writing another post on the hack, especially since this post is mostly rambling on about how wonderful a tool GREP is for geeks, and that I created an RSS feed for Rockwood Comic using PHP, GREP, and cron to write the RSS file it, all wrapped up in Feedburner to give it a prettier URL than the sandbox address my code resides at.
So what's in it?
22.04.05 - Mark
There's a Google hack out there called "Google Cooking" where you punch in everything you've got to cook with, and Google spits out a recipe. As a mild food geek in a house where there's never everything I need to make what I want, I've resorted to Google cooking more than once, and usually to decent results.
Recently I've been thinking about a way to document recipes that I like while being able to use the idea of Google Cooking. A quick easy way to sort recipes I like by what I have.
Like all good ideas, it seems like I'm not the only one thinking along these lines. Dave Slusher tossed out essentially the same idea for discussion on the uplifter blog, but for MAKE and DIY projects.
Coding a single user blog engine is one thing, Building a community driven site is another, but then again, I didn't know anything more than some elementary BASIC 9 months ago...