2/09/2006

Navigator Acquired!

As Jeff Reports, Navigator Systems, the company we work for, was acquired by Hitachi Consulting last week. You can read the press release here. Hitachi Consulting (HC) is a med-sized consulting company with a world-wide presence. It's going to be some big changes for little Navigator, but I think most of the Navigator folks are very excited about the future.


For us application development folk, I think being part of HC will give us the opportunity to be involved in even larger projects and stretch ourselves as developers. I'm anxious to see what kinds of application development projects HC has been doing, talk to some of their application development folk, and figure out how we can all integrate. Should be fun.

Workraving

In my recent quest to find ways reduce hand strain, I came across an application called Workrave. It's a nifty little Windows application that forces you take periodic typing breaks. You can configure the time between breaks and the length of each break. At the specified interval, it pops up a window and suggests a rest. You can skip or postpone the breaks. It works quite well, and I've noticed that it will even pop up in front of a full-screen VMWare session. There's even a way to view your work statistics by day!



Despite its goodness, I have a love/hate relationship with this application. The break pop-ups sometimes annoy me. I'm jamming away, all flowing, and there's the window. Sure, I can ignore it, dismiss it, or postpone it - but all that takes me out of the flow a little bit. I'm sure that I will learn to work with it better over time (just like my freshly remapped Control key).



I may be noticing some difference in my hand fatigue. I'll have to keep working with Workrave and my other improvements to see if they're really going to make a long-term difference.



BTW, I typed through a micro-break and finally took a micro-break during the production of this article.

Web Standards Project

I was reading the December 2005 issue of Computer yesterday (yes, I'm that far behind), and I came across a News Brief entitled Organization Develops Scripting Standards. The article talks The Web Standards Project. The Web Standards Project is a grassroots effort to fight for standards in web technologies. Currently they have campaigns for an Acid2 Test, DOM Scripting Task Force, Dreamweaver Task Force, and an Education Task Force.



I really like the idea behind the DOM Scripting Task Force. The manifesto says that the task force wants to solve some of the problems with JavaScript development like bad practices, obtrusive DOM scripting, and accessibility.



Yes - please fix all that.

2/06/2006

Blogger Markdown

Jasper de Vries has a Greasemonky script that will enhance Blogger's HTML editor with the ability to convert Markdown to HTML. Very sweet. Now you can post in Markdown. Love it.

Remapping My Control Key

Bill Clementson's post titled Surviving Emacs - Part 4 inspired me to remap my keyboard. I suffer from Emacs Pinky frequently and I'm looking for a little relief. So, today I made it a point to remap my keyboard to move the control key to caps lock using KeyTweak.

I have to say, I'm not used to it yet and it's bugging me really badly. I have alot of muscle memory built up. I can definitely see how the smaller reach is desirable, but it hasn't made a difference to me yet. Probably because I keep reaching for where the control key used to be rather than where it is now!

I'm going to keep going with it for a week or two. I'll try to report back and let you know how my pinky is doing. (The shift key seems to still be wearing me out, though.)

2/01/2006

Emacs Pinky - been there

Emacs Pinky hurts. I'm glad it's documented. Now I have some advice on what to do about it. Also, check out Bill Clementson's entry about Surviving Emacs - Part 4.

1/31/2006

AutoHotkey + Cygwin + Markdown = Kung Foo

I've recently been inspired by several sources to look at Markdown. I've long been looking for a way to document things in an open, neutral format and Markdown seems promising. The syntax is very simple (much simpler than TeX/LaTeX or XML) and people claim that you can get used to using it very quickly. Simple is good.

One of the easiest ways to generate formatted output from plaintext Markdown files is to use the perl script that is part of the official Markdown distribution. It's really simple to get this working - even on Windows. Take Markdown and add a little Cygwin... bingo! Again, simple is good.

After reading the "markdown for windows" article referenced above, I realized it would be really nice not to fire up a bash prompt and type a command just to get your Markdown converted to HTML. Enter AutoHotkey. (AutoHotkey is an OSS utility for writing Windows macros. I've been using it for a while, and I absolutely love it.) With AutoHotkey, you can add a keyboard macro definition similar to the following:

!#m::Run, "c:\cygwin\bin\bash" -c "getclip |/cygdrive/c/Markdown_1.0.1/Markdown.pl|putclip"

I now have the ability to enter Markdown anywhere, select it, cut/copy to the clipboard, hit WIN-ALT-M, and then paste my fresh HTML wherever I want it. To reiterate, simple is good.

Pure Kung Foo...

1/23/2006

Eclipse BIRT Home

Jon pointed me to the Eclipse BIRT project. BIRT stands for Business Intelligence and Reporting Tools. The project is an effort to create an open source reporting system that you can integrate with your projects. Very cool idea.

12/27/2005

Apt-Pinning for Beginners

I'm off work this week and it's given me an opportunity to rebuild one of my servers. I decided to move from FreeBSD to Debian because I like the speed of grabbing binaries from apt vs. compiling ports. Also, there is much more Common Lisp support with Debian.

As part of the install, I wanted to grab some packages from Debian Unstable (namely Gallery 2). I'd done this on another server and didn't care what got upgraded to an instable status. However, I decided on the server I just rebuilt that I wanted to stay as stable as possible while getting the packages in Unstable. I found an article called Apt-Pinning for Beginners that gives you a simple way to control how apt chooses to get its packages. I followed the instructions and I think it's working.

Nifty! Those apt guys sure are cool.

12/12/2005

Recent Inspirational Reading

I've been a GtD convert for about 9 months now (thanks, Mark!) and it's really made a big impact on the way I organize and keep track of all my "stuff". Prior to GtD I was a Covey follower and prior to that I used a system that I cobbled together in college based on different techniques. So, as you can see, I'm a long-time student of time management.

Over the weekend I read two good articles related to time management. The first was "Meet the life hackers" by Clive Thompson. This is a great article that talks about how some researches are trying to solve our information overloaded condition with software. (Has A.I. found another domain?)

I also read "Do It Now" by Steve Pavlina. This is an unbelievable tale of how Steve made it through college in 3 semesters. He also tells you how he did it and the keys to his success. I love the "Do It Now" section. I'm a procrastinator at heart and this section really spoke to me.

12/05/2005

Finding the Best Programmer's Font || kuro5hin.org

Jon pointed me to a list of fonts that someone had rated on kur5shin.org. MMMmmm. Fonts. I think I may like ti92pluspc even better than Anonymous. Will play.

Anonymous Font

Thanks to a message on the LispWorks mailing list, I found a sweet monospaced font over the weekend. It's called Anonymous. (Mark Simonson has a bunch of other cool fonts that you might want to check out while you are there.) It's great for coding because it is monospaced, pretty, and 0s have lines through them so you can easily tell them apart. It reminds me of how I was supposed to write block characters in drafting. Of course, mine never looked this good.


12/01/2005

Try Ruby - 15 minute tutorial


why the lucky stiff has created a short intruduction to Ruby called Try Ruby! It's quite ingenious. It's an interactive Ruby prompt coupled with a tutorial that follows you along burried in a web page. Very cool. He says he's going to add some content, so it's a site to watch.

via Lemonodor

11/29/2005

More Free Love for Lisp

Christopher Roach posted another installment about learning Lisp. This time he talks about how learning functional programming via Lisp made him a better programmer:

Now, I've never used Lisp in my professional life, however, I began to notice that some of the habits I picked up while programming in Lisp were creeping into my daily programming and were actually helping me out quite bit. In functional languages, side-effects are "generally" avoided. (I say "generally" here since, to my knowledge at least, some side-effects seem to be unavoidable—such as I/O operations, for instance). For anyone new to the term, a side-effect occurs when the state of your program is changed from within a function (procedure, method...whatever). This happens quite often in normal procedural and OO programming, but in functional programming it is avoided as much as possible. After programming in Lisp for a month or two, I noticed that in my daily life I had begun to avoid side-effects in my programs whenever I found it possible to do so. This allowed me to create programs that were much easier to unit test, since all I had to do was check the function's output to know that it worked correctly. Also, since no undesired changes occurred inside of my functions, my software immediately showed a vast reduction in bugs, not too mention that purely functional code is also immediately thread safe. Being able to test each function as I wrote it, and prove that it worked correctly without exception, meant that my programs would work almost the first time I integrated everything and r

11/18/2005

Lemonodor: Short Course of Lisp

Lemonodor: Short Course of Lisp is a reference to Robert Sayre talking about Yahoo 2.0. There's 2 nuggets here, the "syllabus" for learning Lisp and a link to Greg Linden's article about Sawzall.

W3C Web APIs Working Group

Came across the W3C Web APIs Working Group page today courtesy of Screaming Penguin. It looks like the W3C is putting together a working group to document existing web client APIs and develop new ones. Things like an API for a client interface, DOM Level 3 events, timed events, client persistence, network communication, etc.

In my dream world, the output of this group would become a series of open APIs that cross-platform GUI toolkits could be built upon.

ONJava.com: Ruby the Rival

The ONJava article/interview ONJava.com: Ruby the Rival is a good read. Chris Adamson talks to Bruce Tate, James Duncan Davidson, Robert Cooper, and Bill Venners about Ruby and Rails. I liked reading the different perspectives on Ruby and Ruby on Rails and its impact on the Java world.

If someone were to prove that it simplifies web development and it makes 80% of the applications easier to write, then I would say bring it on. We can use something else for the 20%.

11/14/2005

Learn Lisp From MIT--for Free!!!

Christopher Roach has a great article about the OpenCourseWare initiative at MIT and how you can take the Structure and Interpretation of Computer Programming (SICP) course for free. His article has some great links to sites that have supporting materials for SICP.

SICP is regarded in many circles as the ultimate introduction to computer programming. I've been meaning to read the book for a couple of years now and have never made time to do it. I've heard that even if you are not interested in Lisp programming you should read SICP. Now you can not only read the book, you can take the course, listen to/watch the lectures, and take the quizes - FOR FREE!

11/02/2005

New version of LW-ADD-ONS

Edi Weitz has released a new version of his LW-ADD-ONS package. From the LW mailing list:

Let me spam the list for a moment to notify those who use LW-ADD-ONS
that I've just uploaded a new version which adds a nifty Apropos
dialog (mimicking a Lisp implementation I won't mention here) and
several new features mostly submitted by Sean Ross.

<http://weitz.de/lw-add-ons/>

Note that you need the latest and greatest CL-PPCRE (1.2.12 or higher)
for this.
LW-ADD-ONS is very nice. It adds some Slime type functionality to the LW environment and some things that are not found in Slime.

I still end up using Slime some of the time, but LW-ADD-ONS really makes working in the LW environment much more pleasant. Also, Edi's documentation search function ROCKS!!!

10/31/2005

The Right Development Team for Rails

Glenn Vanderburg has a good post about "The Right Team for Rails". Having no Rails (and almost 0 Ruby experience) I cannot vouch for the article's accuracy. However, I'm betting he's right on the money.

Glenn says:
The wrong Rails team is one that doesn't understand those principles and practices. The fact that Rails makes things easy won't be enough. In my experience, such teams expend amazing effort and ingenuity to do the wrong thing.
I love this paragraph. If you remove the Rails references, there's universal truisms in here. It applies to almost any technology or language. In fact, you could make the statement about something as general as "programming" and it would be applicable.

So, like Glenn, I think we're still saying, "This can make good, well-informed people really efficient. However, the rest will still find it difficult to succeed."