Just one geek's opinions and epiphanies

#hackUTOS June 2010

[caption id="attachment_488" align="alignleft" width="320" caption="Ceiling Cat"]Ceiling Cat[/caption]

Ceiling Cat announces:

#hackUTOS is is happening tomorrow, Friday June 4th, at CoffeeConnection!

Here's how it works. #hackUTOS is a gathering of the hacking inclined. There is a main project (ConMan) that is being hacked on for the purpose of volunteering for Utah Open Source Conference 2010. More details on ConMan in a minute.

If you are looking to generally gather with geeks then this is the premier event in June for your geekiness! We will be gathering at CoffeeConnection who has great caffeinated beverages for sale (as well as food) and we will be getting our Geek on.

Want to get your geek on, but can't make it in person... we are going to be on IRC too! Find us on Freenode at #hackUTOS

If you are not interested in hacking on ConMan, we still encourage you to come on down! We want all geeks to come by and share in the glory of #hackUTOS. That means you can even bring your own project. Think of #hackUTOS as a Jelly or CoWork (for 1 night). Come share your project and your ideas, find people, network, and generally have a good time.

Now some details on ConMan!

ConMan is the Conference Management software used by UTOS for the UTOS Conference. It is written in Python, using the Django framework. It is hosted at GitHub and it is open to the public. If you don't hack python do not turn and run just yet. We are in need of things besides python coding. We need folks who are willing to conceptualize, we need graphic designers to help make the app look pretty, we need people to help with bug reporting, and more. If you are reading this blog post you are more than qualified to come help us tomorrow (and at any other #hackUTOS event).

Alright... I am tired of typing, and Ceiling cat is starting to freak me out... see you at #hackUTOS

#hackUTOS March 9th, 2010

Hey everyone, it is time to #hackUTOS again!

What is #hackUTOS?

UTOS has been sponsoring Open Source technologies in Utah for years now. This is a chance for all the members (and potential members) to come out meet some of the UTOS hackers including herlo, utahcon, and DexterTheDragon.

We will be hacking on ConMan, the Open Source Conference Management system used by UTOSC! This is a great chance for you to participate, learn,teach, and get credit toward attending the conference for a discounted price!

When is #hackUTOS?

We will be meeting Tuesday March 9th, 2010 at 7:00PM MST.

Where is #hackUTOS?


Along with meeting in person (details below) you can find us online in IRC. We are on the Freenode network in #utos-dev


Since the meeting place worked out well last time we will be meeting again at the Salt Lake Coffee Connection.

Located at:

1588 South State Street, Salt Lake City, UT 84115

The Salt Lake Coffee Connection is a really great place to meet. They have a great internet connection (provided by our good friends at Xmission), awesome drinks (check out the Dirty Chai!) and good food! The prices are good, and internet access is included with all purchases.

What Language?

ConMan is written in Python, using the Django framework. We run it on MySQL and SQLite databases.

Don't know Python, or Django? Don't worry, we are all open to helping you get started. Please realize we are here to mainly work on our project, we are happy to offer light support to get you up and running.

If you aren't interested in working on ConMan bring your own Open Source project! We would love to have you in the house for some great co-working!

Coders At Work

[caption id="" align="alignleft" width="125" caption="Cover Art"]Cover Art[/caption]

I recently finished reading Coders at Work, written by Peter Seibel (@peterseibel), and published by Apress. What an amazing book to read, I can't even begin to express how much I actually enjoyed this book, and I know I am gushing, but this was a real treat for me.

I have always been amazed by the past of computing, the idea of computers as large as houses, filling entire warehouses for simple punch card technology, hell punch cards! I love hearing the stories of how things were, getting the first networks going, writing the first program for any technology, making something that everyone everywhere now uses and doesn't think twice about why it works the way it works.

In Coders At Work Peter Seibel interviews some of the legends of technology including Peter Norvig (Director of Research at Google Inc.), Jamie Zawinkski (major Mozilla contributor, @jwz), and plenty more.

The book was written in the same tune as Writers at Work, and Founders at Work, to showcase the beginnings of coding, and to give an idea of how the world of coding as we know it has come to be.

There is no magic code revealed in the book, and there are no tutorials, just a bunch of old hackers explaining why they did what they did and how and what they learned from the experience.

As of this writing Apress hasn't made available a sample chapter, which is too bad, it would be a great tease and only make you want more of this book.

To give you an idea of what you would be investing in, here is an excerpt from the first chapter of the book, where Peter is interviewing Jamie Zawinski an early Netscape/Mozilla developer. Peter has asked Zawinski about working with Peter Norvig at Berkely, here is his response:

Yeah. That was a very strange job. They had a whole bunch of grad students who’d been doing research on natural language understanding; they were basically linguists who did some programming. So they wanted someone to take these bits and pieces of code they’d left behind and integrate them into one thing that actually worked. That was incredibly difficult because I didn’t have the background to understand what in the world they were doing. So this would happen a lot: I’d be looking at something; I’d be completely stuck. I have no idea what this means, where do I go from here, what do I have to read to understand this. So I’d ask Peter. He’d be nice about it—he’d say, “It totally makes sense that you don’t understand that yet. I’ll sit down and explain it to you Tuesday.” So now I’ve got nothing to do. So I spent a lot of time working on windows system stuff and poking around with screen savers and just the kind of UI stuff that I’d been doing for fun before. After six or eight months of that it just felt like, wow, I’m really just wasting my time. I’m not doing anything for them, and I just felt like I was on vacation. There have been times when I was working really a lot when I’d look back at that and I’m like, “Why did you quit the vacation job? What is wrong with you? They were paying you to write screen savers!”

A good deal of the book is great history of how integrated the coding world really is, and you see a lot of the progression of technology through the book.

If you are the sort of person who enjoys sitting with the masters of your field, and listening to the stories and pondering what it would have been like to have to program everything in Assembly, or possibly in LISP, then you have to read Coders at Work, and then leave it in your reading room, and make sure others get a chance to read it as well.

Beginning Silverlight 2

[caption id="" align="alignleft" width="125" caption="Beginning Silverlight 2: From Novice to Professional"]Beginning Silverlight 2: From Novice to Professional[/caption]

In web development, it's important to keep current on new and updated technologies to avoid falling behind in the field. As a designer-turned-coder, I enjoy reading about and following up on the latest tools available for design and interface programming. Having designed and programmed in Flash for almost 10 years now, I was excited to read this book and see how Microsoft was tackling Rich Internet/Interactive Applications.

The author, Robert Lair, starts out the book with an introduction to Silverlight and the benefits of building interactive applications using Silverlight and its related tools. After the brief introduction, the real work begins and the reader is quickly involved in writing Silverlight applications. Robert does a great job walking the reader through the various tools available while building each application, and each example builds on or incorporates the previous examples, effectively 'stair-stepping' the reader up to building their own Silverlight applications.

Robert suggests that the reader be prepared with some knowledge of C#, JavaScript, and XML, but still keeps the code and examples simple enough to follow quickly and open enough to continue building as the reader's knowledge expands. Possibly the only break from this learning curve flow is the final chapter, where Robert describes and builds a custom control for Silverlight, a button with an extra 'cool down' function that isn't possible using just the predefined Silverlight controls. This is definitely one of the most exciting areas in Silverlight, and while it seems a bit abrupt to dive right into coding a custom control, there isn't a great way to teach such a high-level process without hitting it head-on. Robert handles that extremely well by walking through the code in steps and giving detailed explanations on each piece of the control.

Following the book from beginning to end, the reader will certainly have the tools and enough starting experience to create and deploy Silverlight applications. As with most design and interface tools, the only limit is the imagination and creativity of the person behind the tools. This book provides an excellent starting point for anyone interested in learning about Silverlight and its capabilities.

As I finished the book, I found myself even more excited about Silverlight applications. While I'm not prepared to run around shouting 'Flash is dead!', I am thrilled to see a contender to Adobe's Flash and Flex. It's also good to see an option for the .NET developers to build the Rich Internet Applications while using the programming language and tools they are accustomed to. This book will put those developers on the fast track to rivaling even the best Flash/Flex applications available today.

You can pick up Apress's Beginning Silverlight 2: From Novice to Professional from Apress.com or Amazon.com.

Clean Code: A Handbook of Agile Software Craftsmanship

[caption id="" align="alignleft" width="160" caption="Clean Code: A Handbook of Agile Software Craftsmanship"]Clean Code: A Handbook of Agile Software Craftsmanship[/caption]

Robert C. Martin, or Uncle Bob as he is called, is probably the most impressive coder I have read a book from ever! Right from the word go Robert is filling you with tons of information, skill, and knowledge about what is good code. He doesn't mix any words, letting you know immediately that you will spend some time with this book, it took me almost two weeks to work my way through with a great understanding of the concepts in this book.

I don't want to scare anyone, this book is really important for any coder to read. I will be suggesting it to my employers from now on as a required reading for our developers. The concepts are sound, solid, and make sense. There is no voodoo in this book, and nothing that doesn't come from a great deal of working with code.

Clean Code has the ability to turn any good coder into a great coder, and build teams into better coding machines.

Robert explains the best techniques if factoring code so that it will be easiest to read, and refactor. If the tips, tricks, and suggestions are followed then any coder would be able to follow in your footsteps and enjoy maintaining your code.

There is nothing too outrageous in Clean Code, but instead is a good explanation of why you should code the way we were taught. If you weren't taught to code well, then you really owe it to the coders in your wake to come and read this book.