Archive for the 'Programming' Category

Alice

Alice is an innovative 3D programming environment that makes it easy to create an animation for telling a story, playing an interactive game, or a video to share on the web.

Hmm, I think I will have to check this out…

What is Alice?

This is so cool. The second video is really neat.

F#

F#.

Hmm, neat. I like functional programming. I used ML in a class at Clemson, and LISP in a class at UNLV. They were both a lot of fun, and had some really interesting ways of approaching problems.

I think I am going to have to try this out soon.

More 3D Graphics stuff

Wild Magic Real-Time 3D Graphics Engine, version 4

I wish I could get rid of the urge to do graphics programming

But then I see stuff like Geometry Algorithms.

Kinda neat, but I think I will need to look at the code more to decide on the quality of it…

Lazy Vs Eager Init Singletons / Double-Check Lock Pattern

http://geekswithblogs.net/akraus1/articles/90803.aspx

I found this when I was lookign up some info on locking wrt a project at work. The work project used very pessimistic locking, and I thnk locked too mcuh, leading to major performance problems. I don’t think this article helped, per se, but it does have some nice info.

Generic Programming in C#

Generic Classes (C# Programming Guide)

Okay, so I was thinking about the Project Euler, and decided that I should be looking at more generic forms for my solutions. For example, I was looking at closed formula for the sum of integers / primes / multiples of and remember that the C++ STL had accumulate template functions that could take function objects and iterators do interesting work. It would be nice if I could do the same for C#. So I started looking and found the above link. It is something for me to think about, anyway.

Project Euler: Sieve of Erosthenes

Okay, so I have finished the first 10 problems at Project Euler
and I am starting to build a library of functions that I can use. I am using C# 2.0. Here is the Sieve of Eratosthene (I can’t remember where I got the algorithm I used :( )

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public static List< long > SieveOfEratosthenes(long n)
{
    List< long > a = new List< long >();
    a.Add(0);
    for (long i = 1; i < n; ++i)
    {
       a.Add(1);
    }
 
    int p = 2;
    while (p * p < n)
    {
       int j = p * p;
       while (j < n)
       {
          a[j] = 0;
           j += p;
       }
       ++p;
       while (a[p] != 1) ++p;
    }
    return a;
}

Project Euler

Number Theory Puzzles

Sounds neat.

Code Search for Developers

Krugle

I saw a blurb about this in Computer Power User Magazine.

Visual Studio .Net Hacks

Visual Studio Hacks website for the very fine Visual Studio Hacks book.

Dreamweaver 8 and Dreamweaver 8: The Missing Manual

Loving both atm.

I have been struggling terribly using notepad to do web design with CSS and the thought of CSS + PHP was starting to stress me out a bit. But as I am working through the very encouraging tutorials in Dreamwever 8: The Missing Manual, I have begun to believe it won’t be so bad. In a couple of  days when I finish reading the book, I will take a stab a creating a new template for this blog. Then onto some Joomla templates and maybe an OS Commerce template. Fun stuff.

Software Development - Lessons Learned #1

For the last year or so, I have been developing my first REAL application. I have been a programmer for a little over 5 years now, but have not created a non-trivial application until now. Some minor utilities, some testing, some documentation, some platform migration of existing code I have done. Creating a stand alone app, I have not.

So I have learned a few things, some about the world, most about me.

- I am not going to ship unless someone makes me. I like to tinker, to polish, to re-implement. (’Perfect is the Enemy of Good-Enough’)
- I am bad at estimating time.
- I greatly overestimate my ability to ‘cram’.
- I can actually do good application architecture / design. This was the real shock.
- I must not stop learning or reading. The more time I spend reading books / journals the more I realize how just dumb I am.
- I need to be more humble, because when I look back at what I thought was clever, ugh, it makes me cringe.
- I talk faster about my stuff than people can follow me.

Well, okay, these lessons were all about me. Most would not be shocking to people close to me, but I don’t slways remember them.

- I need to start a bibliography of good CS / Programming books.