Monday, February 18, 2008

its been awhile

So my project, which I mentioned in the last post has progressed signifantly (see cct.mercer.edu) and I'm quite pleased with it. Over my Christmas break I ended up re-coding almost the entire thing. I have learned quite a bit about developing a real application, the main thing is to not take short-cuts, writing the class/module/package right the first time is worth the extra time and thought. After I re-wrote all the 'bad' code that has been slopped together at the last minute for demo's last semester, I found that development was quick and painless. Extending a well written framework makes programming enjoyable.
I am also quite impressed with the ZK framework. It really makes AJAX development simple. I chose to code the AJAX UI sections in Java, (ZK also allows for a XUL like UI) which made development quite simple. Object Oriented user interfaces are really neat, code reuse becomes the standard and I can now add a new form and admin console in about 15 minutes.
The Java community as been in quite a huff lately over the idea of closures in Java 7. I have skimmed several articles on them and I can't see the advantage really, just write a method! One of the drawbacks of C++ is the language bloat, and I think Java is headed that direction too. One feature I am looking forward to seeing in Java 7 is type literals and reified generics. In the application I'm working on now, having type information available at runtime could eliminate a good deal of code, and eliminate the need to pass a Class object along with a generic list.
On a personal note, something just bug me. One major thing that I just cannot understand is when people flat lie to your face. There is the person I know, and I asked the person if they were lying to me, and they said no, well I come to find out later that of course they were... Why, did that person lie, it was about something that was not trivial, and easy to verify, I chalk it up to plain stupidity.

Labels: , ,

Sunday, December 16, 2007

code monkey

So finals are done, finally. I am now coding like 16hrs a day to get a project done for a client. It was a class project that I committed to finish, and in the last 48 hours, I've done as much alone, as my team of 4 did over the last semester. Granted I do have an advantage of no other work, and I don't have to worry about keeping in sync w/ 3 other people.
ZK is also a great framework, it took about 30 min from reading the online documentation to moving my old pages to new fancy AJAX pages. I am an API slut, I am using Apache Velocity and ZK (its actually a really awesome combo) and Apache Cayenne for my data back end, which makes development very smooth. Action handling is very smooth and its almost like writing a desktop app, everything is in Java, and the UI elements in ZK look well, and function great!

Labels: ,

Sunday, October 14, 2007

What is code worth?

As a software engineer, I write lots of code, and as such, I have thought a good deal about how much that code is worth. Most of my code has been written either for a class project or for my official duties on SGA, but I could also take that code and market it, but at what price? In the normal world of economics, there is a mathematical cost function for figuring out how much a widget is worth, but software is a new beast. When I spend many hours working on an application or library, is it worth some hourly wage times the number of hours put into it? I could have spend 50 hours carving a toothpick from a 2x4, but is it worth $50/hr * 50hr? There is also the problem with unit cost, the price of software is, for analytical proposes, 100% developmental. The pricing of most software is seemingly arrbitray, the company sets a price based on what they think people will pay, but now 'stealing' software takes a new twist; when I steal software, you don't lose anything.

Labels: