GeekLikeMe.net

GeekLikeMe

(home)
Insert quarter. Avoid Klingons.
Collected web clippings, ramblings, and scribblings from me to you.

Wednesday: July 22, 2009

An emergency iPhone development guide just for you.An emergency iPhone development guide just for you.

One of the best guides I've read on jumping into iPhone development. Good luck.

Posted to Weekdaily filed in Programming @ 1:53 PM | Tags (4) | development | emergency | iphone | programming |  | Discuss (0) |  | facebook | twitter | 24 Clicks | Posted by Vin


Wednesday: July 8, 2009

A list of the top five non-technical mistakes made by programmers.A list of the top five non-technical mistakes made by programmers.

Sad but undeniably true.

Posted to Weekdaily filed in Programming @ 1:35 PM | Tags (6) | developer | development | errors | mistakes | programmer | programming |  | Discuss (0) |  | facebook | twitter | 44 Clicks | Posted by Vin


Tuesday: July 7, 2009

Ten CSS tricks to make your website look cool instantly.Ten CSS tricks to make your website look cool instantly.

Have fun.

Posted to Weekdaily filed in Programming @ 7:39 AM | Tags (6) | css | design | programming | cool | website | development |  | Discuss (2) |  | facebook | twitter | 71 Clicks | Posted by Vin


Monday: July 6, 2009

The hazy future of web typography.The hazy future of web typography.

An interesting read regarding web typography standards and the challenges within.

Posted to Weekdaily filed in Programming @ 4:00 PM | Tags (7) | ars | development | fonts | programming | standards | typography | web |  | Discuss (2) |  | facebook | twitter | 17 Clicks | Posted by Vin


Thursday: July 2, 2009

Microsoft pulls the curtain back on Kodu, easy video game development on your Xbox.Microsoft pulls the curtain back on Kodu, easy video game development on your Xbox.

Kodu, known originally as Boku, utilizes an icon-based language to allow inexperienced users to create small games with no programming knowledge. Kodu game makers use the Xbox 360 controller to navigate menus, with no keyboard required.

Posted to Weekdaily filed in Video Games @ 2:58 PM | Tags (6) | development | gaming | kodu | programming | small | xbox |  | Discuss (0) |  | facebook | twitter | 7 Clicks | Posted by Vin


Wednesday: July 1, 2009

New web design book from Dan Cederholm coming out next month.New web design book from Dan Cederholm coming out next month.

I was introduced to Dan's books from a friend and have since encouraged anyone who wants to get into standards-based web development to read his books cover to cover.

Posted to Weekdaily filed in Programming @ 4:51 PM | Tags (6) | design | programming | css | standards | books | development |  | Discuss (0) |  | facebook | twitter | 14 Clicks | Posted by Vin


Thursday: June 25, 2009

Ten tools to help improve your site's usability on a low budget.Ten tools to help improve your site's usability on a low budget.

A good list of tools for my fellow web nerds out there. I just started playing with Google's website optimizer yesterday.

Posted to Weekdaily filed in Programming @ 7:25 AM | Tags (6) | usability | tools | web | programming | development | optimization |  | Discuss (0) |  | facebook | twitter | 7 Clicks | Posted by Vin


Thursday: June 18, 2009

Ten ways to make your site accessible using web standards.Ten ways to make your site accessible using web standards.

Another quality post from Smashing Magazine that covers everything from doctypes to validation. This post is a great read for all of my fellow web development nerds.

Posted to Weekdaily filed in Programming @ 2:37 PM | Tags (7) | css | development | smashing | standards | validation | w3c | web |  | Discuss (0) |  | facebook | twitter | 13 Clicks | Posted by Vin


Wednesday: May 6, 2009

An introduction to iPhone application  development. Thanks MIT!An introduction to iPhone application development. Thanks MIT!

This helps with the afformentioned need to learn XCode from two posts back.

Posted to Weekdaily filed in Apple @ 9:45 AM | Tags (4) | iphone | apple | development | xcode |  | Discuss (0) |  | facebook | twitter | 121 Clicks | Posted by Vin


Tuesday: May 5, 2009

Firefox add-on abuse might mean stricter rules for developers.Firefox add-on abuse might mean stricter rules for developers.

Developer fight!

Posted to Weekdaily filed in Interwebs @ 8:43 AM | Tags (2) | firefox | development |  | Discuss (2) |  | facebook | twitter | 342 Clicks | Posted by Vin


Saturday: December 1, 2007

A new verbose post? Really?

A semi-quick little update as to why I haven't posted much of anything to this section in recent weeks months. It can all be summed up pretty quickly actually. I moved, and I'm still on the hunt for a new place call my own. Combine that with other factors like work projects, adjusting to our new temporary residence, holidays, interest rates, the position of Venus in the third house (ok that was really dumb), etc etc. Basically, there a host of other reasons that would just bore you. But never fear dear readers, things are looking up.

I just recently purchased a brand new MacBook (daily grind readers already know this). But what's so special about this purchase? The fact that I can now run Windows on a Mac, that's what! I previously owned a PowerBook G4 (still do, it's just not getting much use anymore). Trouble was (and still is), by day I work in a Windows world as an ASP, ASP.net programmer / web developer. Having a PowerPC Mac just doesn't allow to run the kind of software I need to do any kind of work in my free time while say, commuting home from work or watching television (I like to multitask). And yes, I've heard of Mono, and no it couldn't work for what I need to do for job related tasks.

My new sweet little MacBook, which is both lighter and smaller than ye old fifteen inch PowerBook G4 of yore, is a great little machine. Plus, now I can get back to coding my nerdy ASP and SQL stuff whenever I want to. So basically, things should start happening around here soon. I'm cooking up some potential new features and designs as well as working on other projects that have been sorely neglected.

What's in the pipeline? Well, I really should get back to making some new comics for this site- another sorely neglected section of this site. There is also a project that was supposed to be included in this last iteration of GeekLikeMe that didn't make the final cut. It's going to be spun into it's own little project to see how it fares in the big wide world of web. More on that later when I have something more, uh, well coded to show.

One last note, going on a much needed vacation next week so links will be sparse. My superfluous linking skills will be back on schedule when I return.

Posted to Verbose filed in GeekLikeMe / Site Related @ 12:08 PM | Tags (6) | apple | asp | development | geeklikeme | life | programming |  | Discuss (0) |  | facebook | twitter | 0 Clicks | Posted by Vin


Thursday: December 28, 2006

A quick look at Mac Dashboard Widget creation; the soon to be old fashioned way.

dashclipping

With Leopard looming, the world of dashboard widgets on the Apple desktop are about to change. Soon any user will be able to create a widget in just few clicks using Safari's built-in integrated clipping tool. According to Apple's preview site for Leopard, a user can just select any portion of any web page and magically create a widget. This presents an infinite number of opportunities and I'm very curious to see how this new technology pans out. Will this cause an explosion in the widget world? How easy will it be to share these clipped widgets with the rest of the Internet? How far can you take customization of these clipped widgets? The answers are sure to come when Mac OS X Leopard arrives next year.

I'm kind of looking forward to this new clipping tool. I've always wanted to create a dashboard widget (and I finally did - see this post) but I initially felt it was a bit of a daunting process. The few times I tried to delve into the process I got frustrated and gave up rather quickly. Bearing that frustration in mind it's easy to see why Apple is making web clipping to widget creation readily available with Leopard. Intermediate web developers comfortable with the PC environment (such as myself) may sometime have a hard time getting into the Mac widget scene for the first time.

My initial trouble was that I took a very programmatic stance towards creating a widget. Again, this is due to the fact that I am mainly a PC programmer and a just casual Mac user on the side.

Does one have to compile a widget to make it run on the Dashboard? No.
Once it's running on the Dashboard, can it be modified? Yes.
Can I utilize that neat 3D page flip instance that every widget seems to use? Yes.
What about those slick Apple scrollbars? Yes.

These are just a handful of questions that as it turns out now, were quite unnecessary to ask.

Now to those who have made widgets in the past the rest of this article will probably seem about two years old. That's because it is. I should have gotten into this a long time ago. But hey, better late than never.

mini-app

Widgets are just as Apple describes in their support docs; little web pages. There is no compiling necessary to bring your widget to life. Essentially, widgets just regular old file folders but with a 'wdgt' extension tacked on. This took me by surprise - I wasn't expecting it to be that easy. The whole connotation of a widget doubling as a 'mini-application' caused a stir in my newbie brain. As you might have guessed by now, I'm new to developing code on a Mac so cut me some slack. Anyway, this extension allows Mac OS X to distinguish that your folder is in fact, a runnable widget and not just your average file folder. Basically you can start localizing your widget in your own developmental fashion and create a widget just like you would if it was any ordinary web page.

For my very first widget I decided to make a GeekLikeMe feed widget. The first step was getting the JavaScript in place to parse out my XML file that I keep updated daily (one post a day - one XML update a day). Apple's RSS sample widget came very much in handy at this point. It essentially does exactly what I wanted my widget to do. Go to the web, grab an XML feed, display it in the widget. However, their sample is based on a very standard field set - title, link, date published. For some odd reason, I never included a date published in my XML feed. This threw a monkey wrench in my otherwise painless widget creation process. A couple of quick tinkering with the underlying JavaScript to change some field declarations and I was good to go.

widget dimensions

Once that was fixed, I moved on to the look and feel of the widget itself. Now what's interesting about the dashboard environment is that some things are already done for you but some other things are not. Worried about where to size up your widget in terms of height and width? Don't be. Just make a PNG file of your design and name it 'default.png' in your widget folder. Mac OS X will assume that this file contains the default width and height of your widget and will run with it. However, you can also set your own custom height and width via the 'Info.plist' file that must be contained within your .wdgt folder. While we are on the subject of the 'Info.plist' file; one thing that may slow you down is enabling web access if your widget happens to need to talk to the Internet (like grabbing a feed from the world wide web). To enable this you will need to open up your widgets 'Info.plist' file and add the following bit of code: AllowNetworkAccess Once you have that in place your widget is free to talk to the web in peace.

What about adding that signature widget scrollbar that everyone seems to use? Apple has a very nice little script you can plugin to your code to make that work correctly as well. You basically just have to make sure that you target the name of your DIV tag that contains your widget's content. And again, this script can be easily found and appropriated to your own code by taking a look through Apple's sample widget examples.

If you have a regular anchor tag contained in your widget you will notice that by clicking on it the linked web page will come up in the actual widget area itself rather than pop open Safari (or your web browser of choice on the Mac). To enable your links to open up outside of Dashboard you will need to use a JavaScript function, here is an example:

function clickurl(event)
{
if (window.widget)
{
widget.openURL (event);
}
}

When coding your anchor tags simply include the JavaScript function to your 'onclick' function with the desired target URL. Here is an example: www.geeklikeme.net This method will make all of your HREF calls open up outside of your widget.

Debugging can be a little bit of a pain. I found myself debugging my widget while it was running in Dashboard 95% of the time. In the Apple developer documents they suggest using Safari to test out your widget. But from what I could tell, you can't really harness all of the Dashboard technologies unless you actually run your widget in Dashboard (ie testing out how the page flip actually looks). But still it's just a minor annoyance as working on the actual dashboard itself is not that big a deal. Besides, I really want to see that cool liquid effect when I see my widget pop open for the first time. It still makes me giddy, I don't know why.

widget deletion

There are a couple things to be mindful of if you debug your widget using Dashboard though. Mac OS X has a weird habit of moving your widget files (and not leaving copies of them) at a moment's notice. For instance, if you are working on your widget on your desktop and you decide to install it to Dashboard your files will be magically whisked away to your ~Library/Widgets folder. Just something you want to keep in mind if you want to know where you widget happened to run off to. And as always with coding, it is generally good practice to keep active backups of your work just in case any other unexpected shenanigans come into play (accidental deletion). On the subject of widget removal management, deleting your widget from the Dashboard will simply send all of your files to the trash bin. So be careful before emptying the trash if you have some recent changes to your widget that you don't want to lose.

Basically thats a very generalized view of widget creation on the Mac and some things to look out for during the actual programming process. It should be noted that I made my widget in a very ass-backwards style. I developed everything on my PC using HomeSite 5.0 and then ported the code over to my Mac's widget folder with every change. Not the quickest and easiest methodology but sometimes you've got to go with what works.

I have attached the source folder of the GeekLikeMe feed widget if one is so inclined to play around and make a widget themselves. A careful eye will probably notice that a lot of the code is heavily sampled from Apple's RSS widget. Sometimes the best way to learn is by example.

Download the zip archive of the GeekLikeMe widget here.

Posted to Verbose filed in Apple @ 10:56 AM | Tags (5) | dashboard | widget | apple | feed | development |  | Discuss (0) |  | facebook | twitter | 0 Clicks | Posted by Vin


«« First 2 3 Last »»