Author: Jon

  • Tools of the trade

    It’s been awhile since I’ve posted anything overly technical here, but it strikes me that a “snapshot” of what I do (for work) and how I do it (the tech) might be useful to some.

    What I do is web development for Smart Solutions here in Bend. Smart Solutions is a web and software development company and the company essentially has three main divisions: custom software development, SEO (search engine optimization—I know, that’s another post), and web development. All these “divisions” work pretty closely with each other—there’s a lot of line-blurring, actually—but for the most part developing websites for clients is what I do.

    The platform we develop for is Pixelsilk—the custom Content Management System (CMS) that Smart Solutions developed from the ground up (and is still developing). The marketing pitch is, it’s SEO-optimized, gives you full control of your HTML, gives you all the tools you need to interact with social media, etc. etc. etc. Move past all that and get to the meat of it, and the primary things I really like about Pixelsilk is that you interact with all of your content and data inside of the system (rather that working with offline files that need to be FTP’d to various places), there’s a powerful and comprehensive Javascript API (giving me the capability to extend the system in new ways), it gives you the ability to re-use code and libraries, and that it’s entirely web-based—-meaning I can work on a site from any browser.

    I’m also the company’s defacto WordPress developer—yes, we host WordPress blogs in addition to Pixelsilk sites—and a few other PHP applications so I still get a chance to flex my PHP muscles every now and again. (Smart Solutions is otherwise a Microsoft and .NET shop.)

    Of course, I use a number of additional tools to develop for the web, and that’s what this post is really about.

    What I use is a mishmash of online and offline tools. In the “offline” category I make use of:

    • The GIMP, open-source graphics software. Free to download, and fairly powerful, there’s still a lot I’m learning about it, but I do most of the graphics work I need to accomplish with it. (Photoshop is the standard for the company, but I’m not versed in it.)
    • Microsoft Visual Studio, various flavors. Sometimes moving the HTML/Javascript/CSS into an editing tool is easier to deal with, and I frankly like the Visual Studio editing environment best of the various programs I’ve tried for these types of files.
    • PHP Designer. I actually use the (older) free version because, well, it’s free and does what I need, it’s fairly lightweight, and it has the same kind of keyboard mappings and editing environment as Visual Studio.
    • Notepad. Yes, a stripped-down plain text editor. You’d be amazed at how much I have this open.
    • FileZilla. Yes, sometimes you still need an FTP client, and FileZilla is a good free Windows client.
    • PuTTY. A great free SSH client, because I spend a non-insignificant amount of time on a *nix command line.
    • Apache/PHP/MySQL: Installed on my Windows boxen as test environments. Pretty critical especially when developing WordPress themes.

    Online:

    • Google Chrome and Mozilla Firefox as my primary browsers. I actually use Chrome as my primary while at work and Firefox while at home; these are both highly standards-compliant web browsers and I know if I can get something to work properly in them, then that is in fact how it should work. Chrome has some great built-in development and inspection tools; in Firefox I employ a number of extensions.
    • Web Developer (Firefox plugin): A variety of pretty essential additions in toolbar format for all aspects of web development.
    • Firebug (Firefox plugin): Probably the #1 plugin I would recommend; it adds code inspection, network information, Javascript debugging and inspection, and all manner of incredibly useful tools—you can’t be a proper web developer without this installed. (Chrome’s built-in tools come pretty close to this.)
    • Page Speed (Firebug add-on): A fantastic add-on to Firebug that analyzes the overall page performance (using Google’s recommended benchmarks/tests) and gives you hints on what you can improve.
    • Header Spy (Firefox plugin): Shows HTTP headers on the status bar, useful for troubleshooting server information.
    • AFOM (Firefox plugin): Incredibly useful plugin for the Windows version of Firefox which fixes the memory leak prone to Windows Firefox.
    • Internet Explorer: Of course, you can’t develop for the web without checking your work in IE, and IE8 has a decent set of developer tools built-in—including the ability to switch between IE7, IE8, and Quirks modes.
    • W3C Validator: Because you want to make sure your site code validates and works properly, right?
    • jQuery: The best Javascript library out there. If I’m doing anything in Javascript these days, 99% of the time it’s using jQuery.

    There is of course other tools I use that fall primarily under the heading of “my own sites” and are not necessarily web development per se: Google Analytics and Google AdSense are two examples. That’s probably another post.

    This list is likely incomplete—I may have missed an item or two or three, and if I think of any I’ll update it. But this gives an idea of the various tools I’m employing currently and to a large extent what I’d consider the minimum number any good web developer should be using these days.

  • WordPress!

    This site is running WordPress now; if you’ve visited in the last few days you may have noticed. The transition process was overall pretty painless, having done this already for my other two blogs; the real work is in going through old entries (many of the first, I don’t know, couple of years worth?) and updating them to fix the URLs (many of which are currently broken in WordPress) and re-categorize and tag everything.

    It’s interesting revisiting these old posts, watching the evolution of the writing as I find a “voice” on the blog. And it’s amazing how far back this all goes—I started this blog back in 2002 and there’s been an amazing amount of change in my life since then.

    I’ll be continuing to make fixes and add features over the next few days/weeks. That’s one thing I love about WordPress, is the ease of building this stuff out. (Of course, that can be one of the things to hate about WordPress too.)

  • Wrapping up November

    Our Thanksgiving was pretty great, thanks to a big (for us) group of family and friends and despite the cold and snow the weather decided to dump on us. ("Snowmageddon" is my term for such events because everyone always gets up in such a tizzy over them.) We have Thanksgiving dinner at our house, and this year the cooking proceeded really smoothly as well—when you’re dealing with a 21 pound turkey you never quite know for sure.

    Of course, having lots of beer and maintaining a rolling buzz throughout the day helps tremendously as well.

    I have a birthday approaching, whereupon I will turn 38, and for the longest time I’ve had it in my head that I’m already 38; it’s more of an effort to remember that no, I’m only yet 37. I’m not sure if that means I should be worried, or that I’m just caring less and less about my actual age.

    I know I’ve been saying for a while now that I’ll be moving chuggnutt.com over to WordPress soon… I’m thinking "soon" might be this week or so. I know this is really of no interest to you unless you’re a blogging software enthusiast, but I think what I’m going to end up doing is forgoing the old categories/tags entirely and simply focus on bringing over the content and comments. I can always go back and re-categorize and re-tag later, if I’m ambitious.

    There will likely also be a number of broken links; I believe early entries to this blog had a URL that ended in ".html" and the later ones are ".php"; I will probably preserve the ".php" as I did for my other two blogs, but with WordPress that will break the old ".html" URLs. I should be able to handle those with redirects, but the site might look like a circa-1999 "under construction" website in some places for a bit.

  • I still hate Daylight Saving Time

    I’ve ranted about daylight saving time before but these past few weeks are really bringing home just how much I truly hate the practice: it’s pitch dark at 7am. (I get up at 6:45.) Pitch dark! It’s ridiculous! It should never be that dark at 7 in the morning in mid-Autumn—unless you live above the Arctic Circle, but that’s a different matter.

  • Happy Halloween!

    Happy Halloween! We’re getting ready to go trick-or-treating soon, but if you need something hilariously funny, check this out: The 50 Most Terrifying Sesame Street Costumes.

    lolz!

  • The Halloween season

    Being a couple of days from Halloween naturally conjures up images of ghost stories and spooky hauntings. And this being a blog means, of course, links.

    John Gottberg Anderson (Bend’s resident restaurant critic and travel writer) has a couple of posts on his blog this week: Sleeping with Oregon Ghosts, and Sleeping with Portland Ghosts. Talking about the various places he’s stayed, I believe, that are rumored to be haunted.

    I am amused and not a little pleased to see that a Google search for "Bandage Man" still has my original 2005 post as the number one result. That’s still a great, quirky-Oregon story, and there are even a couple of "first-hand accounts" in the comments on that post.

    For some closer-to-home (that being Bend) ghost stories, check out the Hack Bend post I wrote up two years ago (it being based on an earlier post originally on this site).

  • Some random thoughts for September

    We’ve had our Android phones for a few weeks now—-yes, finally catching up to much of the rest of the First World in that a phone is no longer just a device you talk to people on, but a full-fledged computer you carry around in your pocket—-and they’re slick little pieces of hardware, oh yes. I’m still in "tinkering" stage and not really using it, or rather exploiting it, the way it could be, yet. Half the time I still want to, you know, just make phone calls.


    Don’t know where the thought came from, but it occurred to me earlier today that the (nearly 20-year-old) cartoon "James Bond Jr." was really a terrible idea.


    Thus far in the new TV season I’m liking The Event (though I won’t be as generous with it as I was with Lost—I’ve learned that lesson) and Hawaii Five-O; I thought last week’s (two hour) premiere of Law & Order SVU was ridiculously melodramatic, even by SVU standards (they’re just not very good cops); I’m hoping Law & Order Los Angeles will be good enough to be a replacement to real Law & Order (RIP); and somehow I’ve gotten pulled into watching Modern Family and Parenthood, both new from last season. I’m not sure how to feel about those two.

    I’m meh about the various CSI series; the fake overly-futuristic computer technology they portray highly annoys me, and Miami is worthless as near as I can tell (especially since they’ve apparently eliminated the opening one-liner). How that show is still on the air is a mystery to me.

  • Simulated reality

    Stuck with me (again) since watching Inception (not to mention other movies and sources like The Matrix) is the notion of simulated reality, and more specifically, the (perhaps surprising) idea that it’s statistically more probable than not that we are in fact living in a simulation.

    From Wikipedia:

    Simulated reality is the proposition that reality could be simulated—perhaps by computer simulation—to a degree indistinguishable from "true" reality. It could contain conscious minds which may or may not be fully aware that they are living inside a simulation. In its strongest form, the "simulation hypothesis" claims it is entirely possible and even probable that we are living in a simulated reality.

    This is quite different from the current, technologically achievable concept of virtual reality. Virtual reality is easily distinguished from the experience of "true" reality; participants are never in doubt about the nature of what they experience. Simulated reality, by contrast, would be hard or impossible to separate from "true" reality.

    …the philosopher Nick Bostrom investigated the possibility that we may be living in a simulation. A simplified version of his argument proceeds as such:

    i. It is possible that an advanced civilization could create a computer simulation which contains individuals with artificial intelligence (AI).
    ii. Such a civilization would likely run many, billions for example, of these simulations (just for fun, for research or any other permutation of possible reasons.)
    iii. A simulated individual inside the simulation wouldn’t necessarily know that it is inside a simulation — it is just going about its daily business in what it considers to be the "real world."

    Then the ultimate question is — if one accepts that the above premises are at least possible— which of the following is more likely?

    a. We are the one civilization which develops AI simulations and happens not to be in one itself?
    b. We are one of the many (billions) of simulations that has run? (Remember point iii.)

    Kind of crazy, huh? I’m not advocating one way or the other but it’s tremendously interesting to read and speculate about. In particular, the question of, "How would we know or find out we’re living in a simulated reality?"

    The Matrix, for instance, posits bugs and artifacts of various sorts present in the system that might well reveal the simulation (though the general populace is completely unaware). Inception raises the good point that in a dream reality, even the craziest dream seems completely normal to the dreamer, so there may well not be any way to determine what is real (other than by waking up, although the use of the totem can help if you suspect you are in a dream… maybe).

    Of course, this all spirals into much more existential philosophical points (the nature of consciousness, perception vs. reality, and so on) than I’m going to go into here. Suffice to say, it’s pretty thought-provoking.

  • The obligatory Inception post

    No, I’m not going to review or spoil the movie Inception or prattle on at length about it here. I really rather enjoyed it, it has a few holes here and there, and it gets you thinking.

    In particular, I like the idea of having a totem. Seems safer that way.

  • July? What July?

    I didn’t realize I hadn’t blogged here at all for the entire month; that’s kind of disconcerting. I even had a couple of things to write about but just never got around to it: one was a review of Stephen Baxter’s novel Transcendant (and on Stephen Baxter’s works in general), another on the movie Inception.

    Well, I’ll still write about those things; but I couldn’t just let July get away without some sort of blog post here.