Friday, December 30, 2011

Fun with HTML and JavaScript

I've been working on a web site for a local charity.

The project has been mostly fun, with a small amount of hair-pulling. My forte is "traditional" non-web programs, written in Java or C# to read and write files. The web with its design and layout concepts and its HTML, CSS, and JavaScript is different. I have leveraged my collection of O'Reilly books and the web to overcome the difficulties.

My current challenge is with a specific browser layout issue: a horizontal list of compound items. Each item is an image and text description; I want a set of these across the screen with the text below its corresponding picture. Easy enough to do with a few well-designed lists, at least in some browsers. I can render the list as I want it in Chrome, in FireFox, and ReKonq. But rendering the list in IE eludes me. IE apparently sees a compound list element as a thing that needs a new line, and insists on displaying the list vertically. No combination of list tags and "display: inline" or "display: inline-block" appeases IE.

Grr. More research and experimenting is in order.

Monday, December 26, 2011

Git for version control

I successfully installed and used "git" tonight. (I'm working on a set of web pages for a friend, and I need version control.)

Wow, git makes version control easy. I'm used to the old, heavyweight version control systems (PVCS, SourceSafe, TFS) which require an elaborate install and a more elaborate configuration before one can even begin to use them. I installed git in less than a minute (mostly due to the package manager in Linux) and configured it for my project in less than ten seconds (the one command is "git init" -- with no options or questions).

My old saying was "if your version control system isn't giving you heartburn, you're either doing it wrong or you don't understand version control". With git, I can discard that saying.

Wednesday, December 14, 2011

Arduino and Beaglebone

Tonight's CALUG meeting had a presentation on the Arduino and BeagleBone processors. They are small processors that can do a fair amount of work, and they have hardware for interfacing with sensors and devices like motors and LEDs. The topic was not strictly Linux, since these processors are supported under Linux, Windows, and Mac OSX, but that didn't bother the audience. People were interested and several folks stayed for after-meeting conversations.

Sunday, December 11, 2011

Success with web stuff

Success this week, with web pages and web servers. I successfully composed a web page for my friend, and successfully installed the Apache web server to serve up the web page.

This is not new for me; I have installed Apache before and created web pages before. But no web site is quite like another (perhaps they are snowflakes) and this project had its interesting aspects. First, I used CSS for a lot of the formatting. (And it worked quite well.) Second, I used port forwarding to make the web site visible to my friend. (Before, I was using web pages within the intranet.)

Web "programming" -- I suppose a better term might be "composing" -- and administration is quite different from the traditional desktop programming. Yet possible, with the right resources. I used a number of resources this weekend, mostly O'Reilly books and Google.

Wednesday, December 7, 2011

Time constraints on user group meetings

I attended the CMAP meeting last night -- and left early. This was unusual for me. I have attended CMAP meetings for somewhat more than two years, and I have consistently stayed at meetings until their ends. The last event of the meeting is a raffle of prizes.

Last night I made the decision to leave early. I had arrived slightly early to chat with people at the meeting, which for me is the most important part of the meeting. With other tasks pressing on my schedule, I had to leave before the end of the meeting.

The presentation was on Microsoft's MVC Scaffolding, a set of assistants for application development. The speaker knew his material and presented it well. I have no complaint about the material, except perhaps that it doesn't apply to my current assignment.

Saturday, December 3, 2011

A step away from C# and towards the web

Today I stepped away from "classic" programming in C#/.NET and moved into the world of web design.

A friend asked me to create a web page from a mock-up. A simple task, yet for me a good challenge. Web page design is quite a different mode of thought than the programming on my current assignment. (That programming is object-oriented programming with immutable objects. A step into functional programming, but still quite different from HTML.)

I used several tools for this project: Chrome; Rekonq, the Kubuntu browser; Bluefish, an HTML editor; and Heel, the Ruby-based web server for static pages. They all served well.

I was pleased with the Bluefish editor. It's quite like the old Homesite program (made by Allaire, which was bought by Macromedia) in its simplicity and hands-on approach to web page design. It understands CSS and can edit more than HTML.

I was also pleasantly surprised, and impressed, with Chrome's inspection capabilities.

The 'heel' project made viewing web pages easy. I could avoid the effort of configuring a full web server (Apache) and focus my efforts on the web page.

My success was also due to the information resources available. The web with its forums (and Google's search engine) was important, but also important were the O'Reilly books on my shelf. Web Design in a Nutshell, HTML and XHTML: The Definitive Guide, and "Cascading Style Sheets: The Definitive Guide" were all helpful.