Articles

28 Articles from Hackito Ergo Sum

Hashbang, Dandelions, and a Web Drawing Throwdown

I’ve started writing articles for Smashing Magazine. Smashing is a much larger community with some amazing content. Check out my latest articles there: Web-Drawing Throwdown: Paper.js Vs. Processing.js Vs. Raphael How To Create Web Animations With Paper.js Searchable Dynamic Content With AJAX Crawling. Check them out.

Running Spiffy UI with Node.js

Today Bess Siegal drops by so we can show how Spiffy UI works with Node.js. The best feature of REST is running it from anywhere and calling it from anywhere. Spiffy UI is a GWT framework you can run on any server. We’ve said that from the beginning, now we’re going to prove it. This […]

The Spiffy UI Framework is Open Source

Nine months ago I posted a video about Our Spiffy UI showing the process we used for combining GWT, JQuery, and REST to make a new kind of GWT application. It was fast, it was beautiful, and you couldn’t use it. That last part has changed. The Spiffy UI framework is now open source. Spiffy […]

Creating a Mobile Touch Slide Panel with JQuery

This article shows you how to implement a sliding touch panel in JavaScript. jQuery is the only dependency of the touch slider. The rest is pure JavaScript and HTML. It runs fast, feels natural, and works on every mobile device with touch support.

How To Fix Your Software’s Technical Debt, Program Faster, and Spend More of Your Time Writing Useful Code

New software projects need to get off the ground. If 1.0 isn’t a success forget about 2.0. You move fast, change direction often, and don’t worry too much about the details. If you’re lucky version 1 leads to 2 and 3 and 4. A few years pass and you’ve built up a customer base. People […]

Creating a GWT Wrapper for the JQuery UI Slider

My wonderful and amazing colleague Bess Siegal dropped by to talk with me about wrapping JQuery controls in GWT. This article walks you through creating a GWT wrapper for the JQuery UI Slider with more features, testing, and customizability than any slider available in GWT.

4 More GWT Anti-patterns

My view of GWT is changing. When I wrote 5 GWT Anti-Patterns I saw it as the framework controlling my entire application. Now it’s my glue. GWT is a wonderful foundation holding together the different parts of your application. It can grow and expand to new technologies and uses we haven’t thought of yet, but […]

Our Spiffy UI

A presentation about the technologies, philosophies, and team organization behind my latest project at Novell.

Collecting Statistics for The WordPress Editorial Calendar Plugin

Writing a WordPress plugin is inspiration, perspiration, testing, guess work, and frustration. You spend hours making your plugin just right, but you never know if it is just right. This post shows you the details of the new process we added to collect remote data about the WordPress Editorial Calendar Plugin.

Creating a Multi-Valued Auto-Complete Field Using GWT SuggestBox and REST

This is a guest post written by Bess Siegal. Bess and I work together and she recently created an auto-complete field that handles multiple values. She stopped by to show us how it works, provide an open source example, and give you all the details you need to create a multi-value auto-complete field in GWT using REST.

Fluid Grids, Vertical Rhythm, and CSS Blocking

Here at Novell we’re working on a new reporting tool. It’s a web-based application with GWT and a little JQuery on the client side. On the server side, the tool uses Java servlets. It also uses REST for all communication between the browser and the server. We’re investing in a new code base and we […]

Calling REST from GWT with a little bit of JQuery

Update: The techniques mentioned in this article became part of the Spiffy UI Framework for REST and GWT. GWT is gaining in popularity as an alternative to JavaScript. It’s a little larger and a little more difficult to deal with, but it’s type safe and makes it much easier to write maintainable code. GWT even […]

Creating a JQuery Powered Posts Calendar for WordPress

Hackito Ergo Sum was my first blog and I never intended to post regularly. I write a long article every few months and when I’m happy with it I post it. Often in the middle of the night. Then I started a new blog and wanted to post twice a week every week. The only […]

Give Your Next Presentation In Your Browser With JQuery

I’d rather watch linoleum curl than sit through one more robotic technology presentations. A monotone drone over poorly organized slides turns even the most interesting topics sour. There are many great blogs about giving better presentations. Presentation Zen and the Duarte Design blog are two worth reading. I’ve even written a little of my own […]

My New Book The One Minute Commute

Some of you may have heard that I’m writing a book called The One Minute Commute. It shows all the great work software engineers do to make remote teams successful and tells people how to use the lessons we’ve learned in their companies. I also started a new blog to support that book. I’ll still […]

Create Your Own Sliding Resizable Grid

I’ve focused on web programming for a while now, but I still miss GridBagLayout. GridBag is a Java layout manager and one of the best form layout managers I’ve used in any language. It makes it possible to create forms where any screen size is the perfect size. There are a few different layout managers […]

5 GWT Anti-patterns

As GWT evolves into a senior technology we are developing some good patterns for writing applications and finding some anti-patterns too. This article presents five GWT anti-patterns that are short-term gains and long-term losses. They are found in many applications, and even some of the GWT documentation, but they can get you into trouble. Avoiding […]

Dynamic Grid Layout In JavaScript

You don’t see layout managers much in web applications. Most web pages are positioned with a combination of CSS and <table> tags. Higher end sites are switching to totally CSS based layouts, but it is still a pretty fixed layout. These mechanisms work reasonably well when you know what you are going to show and […]

Tags First GWT

The Google Web Toolkit (GWT) speaks to all the Java programmers left petrified by the thought of web programming. GWT has a siren’s call: forget about cross browser issues, don’t bother with JavaScript, stay away from HTML. In reality, GWT requires deft piloting to stay off the rocks. In case you’ve never heard of it, […]

JSONP and The Same Origin Policy

AJAX connections from JavaScript are a little technology that is revolutionizing the Internet, but they have a severe limitation with the same origin policy. In Java, C++, C#, or any other fat client language I can call out to any server I want, but not in JavaScript. Calling out to other servers makes it possible […]

The Marble Run: Topology For Two-Year-Olds

On a rainy Sunday afternoon my wife Mary, my daughter Audra, and I were playing inside. Audra was amusing herself with her new marble run toy. The idea is simple: you create a series of tracks and then drop a marble in the top of the toy and watch it fall down. Children love them […]

Resume: A Tale of Desire, Intrigue, and Formatting

I hardly ever hand people paper documents, but about a year ago two events happened in my life which caused me to think more about them. The first was reading The Elements of Typographic Style by Robert Bringhurst. The second was getting laid off. I started thinking about the one piece of paper every engineer […]

Create a Shared Peer-to-Peer Clipboard

I often work with two computers simultaneously. Each of those computers runs a different operating system. That work often includes the need send long strings (like long URLs) from one computer to the other. It isn’t easy. I have seen all kinds of solutions to this problem including emailing the strings back and forth or […]

How to Keep a Secret Secret

Steganography is the process if sharing information in an undetectable way. Encryption makes sure your secret can only be understood by the right person. Steganography makes sure nobody else can even tell you are sharing a secret. Run StegTestusing Java WebStart During the height of the Greek empire messages were tattooed on the heads of […]

Create Your Own Search Engine with Python

The ability to search a specific web site for the page you are looking for is a very useful feature. However, searching can be complicated and providing a good search experience can require knowledge of multiple programming languages. This article will demonstrate a simple search engine including a sample application you can run in your […]

The Library Problem

In March of 2006 my wife Mary and I owned about 3,500 books. We both have eclectic interests, voracious appetites for knowledge, and a great love of used bookstores. The problem was that we had no idea what books we had or where any of them were. We lost books all the time, cursed late […]

Drag and Drop File Uploading Made Easy

Everyone has had the experience of uploading images to a web site. You are given a set of 10 browse buttons and have to select each file you want to upload, or worse have to go back to the same page over and over again and select each file. Most applications provide a nice drag […]

Write Your Own Load Tester in Under an Hour

Creating web applications can be a complex and daunting task. Web applications need to support multiple users while providing a fast response time. The best way to ensure your application does this is load testing. A load tester will simulate a large number of simultaneous users accessing your application and give you an idea how […]