Lot Area Calculator

Just finished a long-running development project. This one can calculate the area of an irregular polygon, and lets you set the distance and angles of the polygon’s segments by dragging them around. I’m pressing it into service as a real estate lot size calculator.

The permanent page is at:

Lot Area Calculator

Posted in Software Project | Leave a comment

Core i7 CPU update

Intel started shipping the Core i7-970 3.2GHz this month (for ~$600). This after shipping the Core i7-980X (for ~$1,000). Both are Gulftown, 6-core, 130W LGA 1366 socket chips. I’m very happy with my 920 – I feel no need to upgrade.

Posted in Core-i7 | Leave a comment

Sourceforge Secret Share in Java

Last week I started my first open-source project at Sourceforge: secretsharejava. It was a small, stand-alone project that I wrote months ago, and just now got around to uploading.

The command-line interface is done; soon I’ll be creating the Swing/Applet user interface.

Posted in Software Project | Leave a comment

Programming Languages Vary in Power

The title is a “controversial” quote from the book Hackers and Painters. The book’s author calls it controversial; I call it blindingly obvious but still not seen by certain people.

That book serves as an example that, even though programming languages differ, not everyone agrees on the “important” criteria. In his world, Lisp is the best language, so his criteria match that (e.g. recursion, dynamic typing, garbage collection). Lisp’s ability to write a program that creates a program (see “macros”) gets his highest praise, something much more powerful than c’s #define macros. [For my take on the matter, look at my scorn of #defines, below, then imagine making it even more powerful].

Another thing [that I may just be imagining] I noticed was a hint of sour grapes. Specifically, I’m guessing when Yahoo bought his company and its Lisp code, Yahoo immediately began re-writing the system in a language that emphasized other criteria over “power”, for example, “maintainability”, or “readability”.

Finally, his catch phrase “Lisp has no syntax” is just hilarious. It serves as the definitive example of why the book is kind of a test: Can you spot the falsehoods? The book is thought-provoking, sure, but falsehoods abound nonetheless, sometimes in a Jabberwocky “words mean what I choose them to mean” way. My reference on macros, above, must drive him nuts since the first line is “Macros in Lisp provide a very powerful and flexible method of extending Lisp syntax”.

Posted in Uncategorized | Leave a comment

Commoditization of Intelligence

I just ran into the phrase “commoditization of intelligence” from Accelerando (Singularity). In the book’s context it is scary enough. But it is truly scary when it manifests itself today. Like when knowledge workers are treated like replaceable cogs in a software factory. Or when programming languages are lumped together with “it just doesn’t matter”.

Some technology has almost been commoditized – like the electric outlets in my house. Although, “almost” in this case means “you have heard of GFI, surge protection and true-sine wave UPS, right?”. “Commoditization” in this sense implies a lack of knowlege, a lack of intelligence to distinguish trivial differences from the important differences. Hence, the shock (irony?) of the phrase “commoditization of intelligence”.

I’ll continue building my own computers, because I find that even with commodity pieces, the complete solution provides an order of magnitude boost in the performance-for-price ratio.

Posted in Uncategorized | Leave a comment

Scala Research

I just read about Scala for a few hours. Mainly from Java to Scala with the Help of Experts under the sections “Scala for Java Refugees” and “The busy Java developer’s guide to Scala”.

My first take-away is “Good Luck With That”. Where “That” is code like this: (based on Listing 9)

def main(args : Array[String])
  {
    tryToFigureThisOut     // "This is not part of the language"
    {
      thisMethodThrowsExceptions_GoodLuck
    }
  }

It reminds me of this [invalid but representational] c code:

#define while(j,k) printf(j,k); fflush(stdout);
#define F for(r=d;r<n+N;
F++r)*r=c;
while (--y, --x);

My second take-away is that Scala is a nice spoiler for Ruby – I can see people who are drawn to the wild world of Ruby settling for Scala instead. It is crazy enough to scratch the itch, but backwards-compatible.

Posted in Uncategorized | Leave a comment

Kids on Linux

Today I’ve set the kids up with their own Ubuntu 9.04 Linux virtual machine (one VM per kid). Each got their own IP address and got to set their own password to VNC into the “machine” they now “own”.

All this from a friend (thanks Paul) who said he has the same setup.

It will be interesting to watch as they install their own games and “edutainment” software.

Posted in Core-i7 | Leave a comment

Core i7 Dodo

I just noticed that the new Core i7 chips are out (as of September 2009). See this tom’s hardware article.

The new i7-860 and i7-870 chips are 95W instead of 130W. But the thing that makes the i7-9xx series a dodo is that the 8xx series is dual memory channel, not triple. Motherboard support for LGA 1156 is already huge, and prices are already below $80. Nobody is buying the expensive X58 boards now, and there won’t be any pressure to decrease the price.

So that’s it. I now own the last of the triple-channel CPU solutions that we’ll be seeing for a long time [if ever]. Along with it goes the LGA 1366 socket, which loses to the LGA 1156 socket. And X58 gives way to P55. The new chip line is “Core i7 for LGA 1156”. It is an i7, but not really.

There are some articles mentioning “Gulftown” i9 – a CPU with six cores and 32nm manufacturing, set to release 2010Q2. I’m taking a wait-and-see attitude.

Posted in Core-i7 | Leave a comment

Core i7 build

After nearly a year of waiting (and accumulating pieces like the case, power supply and video card), I finally bought the “big three” [CPU, RAM, and Motherboard] and built the Tiemens Family Core i7 machine.
This machine is intended as a virtual machine [Linux] host.
DDR3 prices came down so much that I switched from 6GB to 12GB for basically the same price.

Item Product Cost
CPU Intel Core i7-920 2.66GHz LGA 1366 130W $280
RAM Corsair XMS3 12GB (6x2GB) DDR3 1600 PC3-12800 Triple Channel TR3X6G1600C9
[2012-Jan] Corsair Vengeance 24GB (6 x 4GB) DDR3 1600 PC3-12800 Hexa Channel CMZ24GX3M6A1600C9
$285

($135)

Motherboard MSI X58 Pro-E LGA 1366 $190
Power Supply Corsair CMPSU-450VX ATX 12V V2.2 80 Plus $60
Video ASUS EAH3450 Silent Radeon 3450 512MB PCIx2.0 x16 HDCP $33
Case Antec Three Hundred ATX Mid Tower $40
Hard Drive Western Digital 1TB SATA 3.0Gb/s 7200RPM 32MB WD1001FALS $95
DVD/CD Samsung SH-223B SATA 22X Black DVD burner $31
Total $1014
Posted in Computer Builds, Core-i7 | Tagged , , | Leave a comment

Hello world!

Welcome to Tim On Computer Science.  This site is dedicated to various thoughts and comments on topics concerning Computer Science.

Continue reading

Posted in Uncategorized | Comments Off on Hello world!