Archive for June, 2007

What is Chaos? An Interactive Online Course for Everyone

Saturday, June 30th, 2007

Ever wonder if a butterfly flaps its wings in China will cause Paris Hilton to stop being so damn annoying…well okay that’s not how cause theory works, but if you want a quick interactive tutorial this is the site for you. The page is quick read through and gives you an idea about how chaos theory works.

read more | digg story

ClassMaster 2.0 software testing and discovery tool released

Saturday, June 30th, 2007

ClassMaster is a software testing and discovery tool which enables you to unit test your code without having to write a test harness for every project. it supports .Net 2.0 and 3.0 Frameworks.

Sweet and simple!

read more | digg story

Learning C# 3.0 - great list of articles

Monday, June 25th, 2007

This blog posting contains a great list of links and articles about learning C# 3.0. If you are late to the game of learning the new language like this guy, this should get you started. C# 3.0 has a lot of cool stuff like anonymous types, lambda expressions and LINQ.

read more | digg story

101 .NET LINQ Code Samples

Monday, June 25th, 2007

Here’s a cool way to learn the new LINQ Syntax for .NET

The LINQ Project is a codename for a set of extensions to the .NET Framework that encompass language-integrated query, set, and transform operations. It extends C# and Visual Basic with native language syntax for queries and provides class libraries to take advantage of these capabilities.

read more | digg story

The most mind-bending and profound article I ever read - Not Quite -

Friday, June 22nd, 2007

This article titled, “The Mathematical Universe,” explores a bold proposition: The physical world IS nothing more nor less than an abstract mathematical structure (not just described by but IS).

That’s not mind-bending. Try thinking about how the universe is supposedly infinite. Try imagining the boundary of said limitless universe. Now, imagine a color you have never seen before. Next, point your finger in the direction of the future. If you go back in time and kill your grandfather, what will happen?

If you go back in time and kill yourself before you go back in time and kill yourself, will you be able to kill yourself before you go back in time and stop yourself from going back in time and killing yourself, thus murdering yourself to stop your own botched suicide in order to commit a successful one in an attempt to stay alive for your 21st birthday?

How many licks *does* it take to get to the center of a tootsie roll pop?

This statement is false. True or false?

- thecompkid

read more | digg story

An Introduction to String Theory

Thursday, June 21st, 2007

Talk given to the Chicago chapter of the MIT Alumni Association on 11 Feb 2004. The audience was about 40 people with a range of backgrounds, most of whom had taken a year or two of physics while at MIT.

A little short, but good.

read more | digg story

Why Is Working Alone On A Software Project A Bad Idea

Thursday, June 21st, 2007

Is software development an activity preferred by anti-social, misanthropic individuals who’d rather deal with computers than other people? If so, does it then follow that all software projects are best performed by a single person, working alone? The answer to the first question may be a reluctant yes, but to the second is a definitive no.

Some folks have claimed that [working alone] presents a great opportunity to establish your own process. In my experience, there is no process in a team of one. There’s nothing in place to hold off the torrents of work that come your way. There’s no one to correct you when the urge to gold-plate the code comes along. There’s no one to review your code. There’s no one to ensure that your code is checked in on time, labeled properly, unit tested regularly. There’s no one to ensure that you’re following a coding standard. There’s no one to monitor your timeliness on defect correction. There’s no one to verify that you’re not just marking defects as “not reproducible” when, in fact, they are. There’s no one to double-check your estimates, and call you on it when you’re just yanking something out of your ass.

There’s no one to pick up the slack when you’re sick, or away on a business trip. There’s no one to help out when you’re overworked, sidetracked with phone calls, pointless meetings, and menial tasks that someone springs on you at the last minute and absolutely must be done right now. There’s no one to bounce ideas off of, no one to help you figure your way out of a bind, no one to collaborate with on designs, architectures or technologies. You’re working in a vacuum. And in a vacuum, no one can hear you scream.

If anyone’s reading this, let this be a lesson to you. Think hard before you accept a job as the sole developer at a company. It’s a whole new kind of hell. If given the chance, take the job working with other developers, where you can at least work with others who can mentor you and help you develop your skill set, and keep you abreast of current technology.

Read more, click below.

read more | digg story

All the world is a DOM. The rise of Identity Based Programming.

Wednesday, June 20th, 2007

In the past few years we’ve seen a huge rise of successful systems built following a Document Object Model
(DOM) type of architecture. By that I mean: open systematized models of complex domains that are easy for applications to specialize and extend in a cooperative manner.

read more | digg story

Microsoft Codename Acropolis - Unwrapped

Wednesday, June 20th, 2007

In this post I take a look at Acropolis - what it is and why should developers be concerned about it. Also, I compare it to some offerings on OS X to help clear things up.

# Parts. A part is a reusable, discrete component of business logic. Don’t try and map this to an existing class in an existing app because unless you’re currently doing composite app building using something like the CAB (Composite Application Block, another offering from Microsoft’s Patterns and Practices gurus) you probably don’t have any one object that performs this task. Let’s say you’re building a point of sale application and you have a screen that has a transaction ledger on it. You might (if you’re a good little programmer) encapsulate the business logic required for maintaining a transaction ledger in a Part. This leads us to the next piece of the puzzle: Part Views.
# Part View. A part view is essentially a self-contained class (comprised of both XAML and C#) that is the view of a part. In true and proper Model-View-Controller/Model-View-Presenter fashion, the view is responsible for receiving input from the user and rendering underlying data. It does nothing more than that.
# Services. Unlike what the current buzz around the word “service” indicates, this is not a web service, nor is it a network service or a REST/POX service and it is not a 24-hour service station serving donuts (though, that would be awesome…mmm…donuts….). In the Acropolis (and generic Composite Application Programming terminology), a service is a self-contained piece of loosely coupled code that provides a service to a part or to the entire application. In the financial ledger example, you might have a Service that downloads transactions from the bank. That Service can then feed the transactions to the Part, which will be picked up automatically by bindings in the Part View. Savvy?

Read more, click below.

read more | digg story

99 Bottles of Beer written in 1102 different programming languages

Wednesday, June 20th, 2007

This Website holds a collection of the Song 99 Bottles of Beer programmed in different programming languages. Actually the song is represented in 1102 different programming languages and variations.

Giant list!

read more | digg story

Molecular biology is undergoing its biggest shake-up in 50 years

Tuesday, June 19th, 2007

Molecular biology is undergoing its biggest shake-up in 50 years, as a hitherto little-regarded chemical called RNA acquires an unsuspected significance

IT IS beginning to dawn on biologists that they may have got it wrong. Not completely wrong, but wrong enough to be embarrassing. For half a century their subject had been built around the relation between two sorts of chemical. Proteins, in the form of enzymes, hormones and so on, made things happen. DNA, in the form of genes, contained the instructions for making proteins. Other molecules were involved, of course. Sugars and fats were abundant (too abundant, in some people). And various vitamins and minerals made an appearance, as well. Oh, and there was also a curious chemical called RNA, which looked a bit like DNA but wasn’t. It obediently carried genetic information from DNA in the nucleus to the places in the cell where proteins are made, rounded up the amino-acid units out of which those proteins are constructed, and was found in the protein factories themselves.

read more | digg story

An Intuitive Guide To Exponential Functions & E

Tuesday, June 19th, 2007

The best explanation of what e really is and how to use.

e has always bothered me — not the letter, but the mathematical constant. What does it really mean?

Math books and even my beloved wikipedia describe e using obtuse jargon:

The mathematical constant e is the base of the natural logarithm.

And when you look up natural logarithm you get:

The natural logarithm, formerly known as the hyperbolic logarithm, is the logarithm to the base e, where e is an irrational constant approximately equal to 2.718281828459.

Nice circular reference there. It’s like a dictionary that defines labyrinthine with Byzantine: it’s correct but not helpful. What’s wrong with everyday words like “complicated”?

Good post…

Read more

read more | digg story

Let’s see if it works!

Tuesday, June 19th, 2007

———copy and paste the Viralink and instructions below this line———

Below is a matrix of 120 stars, I have already added a link to my blog onto one of the stars, all you need to do is copy and paste the grid into your blog and add your own link to one of the other spare stars, and tell others to do the same!

Viralink

********************
********************
********************
********************
********************
********************

When I receive a ping back once you have added the Viralink to your site I will add your link to this grid, and each person who copies the grid from here will also link to your site!

Rules
No Porn Sites
Only 1 link per person (i.e don’t hog the viralink!)
Please don’t tamper with other peoples url’s
Enjoy!

———copy and paste the Viralink and instructions above this line———

How It Works
Just so it is easier to see how this actually works, below is an example of the linking tree. If 3 people copied the above grid into their own browser, added their link and 3 other people copied from them these are the number of backlinks which would be received witht he centre light green circle being this page.

bl1.gif

And if the procedure was repeated and each new person told 3 of their friends, the back links travel back to the source they were added!

bl2.gif

And once again as word gets around and the link tree develops the number of backlinks grows greatly! So at this stage my blog would have 93 backlinks from only 4 levels of “saturation” and by level 5 your blog will also have 93 backlinks if you decide to take part.

bl3.gif

Here are how the numbers add up, I will use the term saturation to describe the spread of the Viralink with Zero being your blog 1 being 1 link down, 2 being 2 links down and so on.

Saturation - Backlinks

0 - 0
1 - 3
2 - 12
3 - 39
4 - 93
5 - 336
6 - 1065
7 - 3252
8 - 9813
9 - 29,496
10 - 88,545

The above numbers rely on 3 people copying and pasting the Viralink onto their blog and that being replicated 3 times continuously 10 times. I think you will agree that the numbers are quite staggering, there are 119 spaces left on the Viralink from this page and I expect that there will be allot of clones which begin to pop up. The best strategy with this is to start early and tell all of your blog partners!

Classic Mistakes in Software Development

Tuesday, June 19th, 2007

If you’re not actively scanning through the list of Classic Software Development Mistakes as you run your software project, you have no idea how likely it is you’re making one of these mistakes right now.

Great post by Jeff Atwood

read more | digg story

Computer Science Degree: More than worth my time.

Tuesday, June 19th, 2007

If you browse the internet enough (more importantly, sites such as Slashdot or Digg) you
’ll come across people who think a computer science degree is worthless. They say “It’s nothing that I couldn’t teach myself”. And perhaps they have a point. I could have taught myself everything that I know. But I would have been deprived several things…

I believe a computer science degree is important because:

* You are exposed to many different aspects of the field.
* You learn how to solve HARD problems.
* Without someone prodding you in the right direction, would you really teach yourself about algorithm efficiency?

Read more from Recycled Air. Click below.

read more | digg story

Wolfram Demonstrations Project — Mathematica 6

Saturday, June 16th, 2007

interactive demos in math, science, and many other areas at all levels, from elementary education to front-line research (Mathematica not required to enjoy demos)

Makes you want to go out and buy a copy today! (if you haven’t yet that is)

read more | digg story

New MonoDevelop 0.14 has been released

Thursday, June 14th, 2007

MonoDevelop 0.14 has been released. Major new features:
* Improved Toolbox and Properties pad
* Subversion add-in
* Refactory operations
* New Open Solution File Dialog
* Class and member selectors
* Improved Smart Indenting for C#
* Project export/conversion
* New packaging features

Oh my!

read more | digg story

Come get your fresh, updated Popfly!

Thursday, June 14th, 2007

Popfly, Microsoft’s mashup creator for the rest of us, has been updated with a ton of new features like a console to help power-users debug their mashups, much better performance, Silverlight Streaming-based screencasts, and a ton of new blocks: Live Image Search, Live News, Live Search, Live Spellchecker, Phonebook, Bar Graph, and more!

* Silverlight Streaming-hosted videos, so Mac users get a great video experience, too!
* Block suggestions to help you build your mashups
* Loading the mashup designer is enormously faster in IE, but it’s also faster in Firefox as well
* Saving mashups should now be a bit faster (for all browsers)
* Mashups that hang should now be the exception rather than the rule
* Loading avatars in search results should be much faster (for all browsers)
* You can see when every member joined Popfly
* Slick inline UI for adding a dev key (no more popup blocker madness)
* You can now click someone’s block from their project page to instantly use it in a mashup
* Preview-time console to help power-users debug
* Tons of new blocks: Live Ads, Live Image Search, Live News, Live Search, Live Spellchecker, Phonebook, Bar Graph, PhotoShow, and Straw Poll

read more | digg story

Next Generation Object Pascal for .NET

Thursday, June 14th, 2007

Browsing online, I found RemObjects Software company and I had no idea that there was a Pascal “resurrection” for .NET: Chrome. RemObjects believes in the combined elegance of Pascal with the power and flexibility of the CLR (.NET/Mono).

Language Features

* Class Contracts >>
* Generics (.NET 2.0 only) >>
* Virtual Properties and Events >>
* Enhanced Multicast Events >>
* First Class Namespace Support >>
* Iterators
* Nullable Types (.NET 2.0 only)
* Enhanced “for” loops
* Inline variable initializers
* Support for unsafe code, such as pointers
* Asynchronous Methods
* Partial classes (for .NET 1.1 and 2.0)
* Class references and virtual constructors

Compiler and IDE Features

* Cross-Platform Linking >>
* Full Integration with Visual Studio .NET 2003*
* Full Integration with Visual Studio 2005*
* Intellisense support with Pascal-specific Smart Editing™ extensions such as Class Completion, Sync Rename and Auto Property Completion™*
* Compiler runs natively under .NET, Mono and Portable.NET
* Enhanced Solution Explorer*

ASP.NET Support

* ASP.NET scripting support >>
* Full ASP.NET design-time support in Visual Studio*
* Full ASP.NET 2.0 designtime support in Visual Studio 2005*
* Free deployment of Chrome compiler for hosting of ASP.NET websites

read more | digg story

One Great Programmer is Worth Fifty Good Ones.

Wednesday, June 13th, 2007

But why is a great programmer worth fifty good ones? It all has to do with the interfaces. If one person can do a whole project, there is a whole layer of complexity, documented interfaces, and misunderstandings that is eliminated compared to having two or more people working on the project.

Great programmers are orders of magnitude more productive than merely good programmers. It’s like basketball players. Michael Jordan isn’t just 20% or 50% or 100% better and more useful to his team than you or I would be; he’s simply in another league (or was).

The best thing you can do to make your technology-based company succeed is hire (or outsource to) a great programmer. Second best thing (Mary might disagree) is get a great marketing person but that’s another topic for another day. Today’s post is about the person who will build the better mouse trap for you.

Read the rest from Tom Evslin. Click below.

read more | digg story