The Wayback Machine - https://web.archive.org/web/20091213020850/http://blog.codeguru.com:80/blog/

CodeGuru
Earthweb Search
CodeGuru Navigation
Member Sign In
User ID:
Password:
Remember Me:
Forgot Password?
Not a member?
Click here for more information and to register.

jobs.internet.com

internet.commerce
Partners & Affiliates
















RSS Feeds

RSSAll

RSSVC++/C++

RSS.NET/C#

RSSVB

See more EarthWeb Network feeds

Recent Entries

Monthly Archives

Internet.com / blogs

Free Tech Newsletters
Free Tech Newsletters
ADO.NET Entity Framework Tutorial and Basics
Discover an ADO.NET Entity Framework tutorial covering basic data operations for applications, including LINQ To Entities, Method Expressions, stored procedure mapping, and a little discussion about its usage in an enterprise environment.

Asynchronous Socket Programming in C#: Part I
This is a simple Client-Server application developed to explain the concept of asynchronous sockets in C#. This extends the socket program to accept multiple clients. Because this example uses Asynchronous methods, threads are not necessary to communicate to multiple clients (though internally the asynchronous communication mechanism uses threads at the OS level).

.NET Web Services Tutorial
Writing .NET Web services without using Visual Studio can be tricky. Learn how to create a Web Service without using Visual Studio .NET.

Free Tech Newsletters
Deploying and Configuring SQL Server Integration Services Packages Without the Wizard
Ever get confused by or dislike using the SQL Server Integration Services deployment wizard? Learn how to manually deploy the packages to SQL Server 2005 and configure the packages in a multitude of ways as well.
Improving Portal Page Load Performance
Portals provide users with access to more applications from a single point of entry, but if it takes too long to get in,, they will go elsewhere. Learn specific techniques to improve page load time and track down what is slowing your pages down.
Handling that Pesky Windows ControlBox
Some things that seem hard are actually quite easy, and some things that seem easy take a little work, like that little [X] on a Windows Form, the ControlBox. Learn how to know just when that little bugger is pressed.
Getting Up and Running with the Composite UI Application Block for WPF
Discover how to build complex Windows Presentation Foundation (WPF) applications with reusability and componentized design in mind by using ready-made patterns.
NEW and IMPROVED: A Lesson in Change Management and Project Management
What is the most effective way to introduce change within a department or organization?

Are you looking seriously at concurrent or parallelized procedures within your applications yet? Do you know what impact using such techniques is going to have on your development cycle or your applications?

If you are not at least considering the impact of multi-core processors on your application development, then it might be a good time to start. If you look at the system offered today, you'll find that many now come with dual core chips. On higher-end desktop systems quad-core is becoming the norm. In 2010 you'll see AMD and Intel start migrating the high-end towards six-core chips.

The number of cores is going to continue to grow. In fact, in 2010 Intel is expected to release a 48-core chip to researches to begin using. According to BBC News, Intel has already developed an x86 based 48-core chip dubbed the Single-Chip Cloud Computer (SCC).

If you are not adjusting your applications to take advantage of multi-core, then you could be wasting nearly 80% of the power of a six core chip. On a 48 core chip you'd barely be touching the power if you don't adjust your application.

Of course, you can argue that 48 core chips are only for the high-end user and not main stream. Of course the same argument was made with dual core chips just a few years ago. The other old argument is that you'll never use all the power of the many cores. Again, a similar argument was made a few years ago about disk space. Nobody would ever need a terabyte of data storage on their machines. They could never use it all. Yet today, people are buying Terabyte drives for under $100. More importantly, they are using the space. Of course, to process all that data, what would be better than applications using multi-core chips to process it concurrently!

Are you already considering the impact of multi-core on your applications?

Microsoft has released a number of public betas. This includes Silverlight 4, which can now be downloaded from:

http://silverlight.net/getstarted/silverlight-4-beta/

Silverlight 4 is targeted for release next year. The first three versions of Silverlight were released within 22 months. Micorosft is on the same clip with Silverligth 4.

Also released are public betas of products such as Microsoft Office 2010, Project 2010, Visio, 2010, and SharePoint 2010. You can find more on these at:

http://www.microsoft.com/2010/en/

I predict a decrease in developer productivity today....

 

Microsoft has C#, IBM has REXX (and RPG, ECL, and others), Oracle has Sun, which has Java, but what does Google have? Looks like they feel they need to have a programming language of their own so they can be part of the club.

Google also isn't one to leave money on the table. They seem to have taken their Monopoly game way too seriously. Or, maybe they just spent too much time at McDonalds eating Big Macs and playing their Monopoly game. The popular phrase, "Do not pass Go, Do not collect $200" is just a step in a game. It isn't a directive to take over Go in order to get all the money!

With my goofy references out of the way, it should be obvious at this point that Google is presenting a new programming language dubbed Go. This is yet another C-based language proposing to make system programming easier. As stated in the Go Language FAQ, "Go is an attempt to combine the ease of programming of an interpreted, dynamically typed language with the efficiency and safety of a statically typed, compiled language."

Go is attempting to make programming easier. It is trying to reduce the number of concepts &mdash and exceptions to those concepts -- that a developer has to understand. It is trying to reduce type complexity by eliminating type hierarchies. It is trying to reduce code complexity by doing things such as eliminating forward declarations, header files, and such. It is also attempting to make networked and multicore computing easier.

It is always interesting to hear that a first-generation language is trying to simplify development. By the third or fourth generation, it is likely to be just as complicated as all the others. For example, things like pointer arithmetic, generics, exceptions, assertions, method overloading, and type inheritance all missing from Go. In time, as some of these are added, or as work-arounds are created, we'll see if Go continues to be simply or if evolves into just another C, C++, Java type of language. After all, these languages all started much simpler too....

So what do you think? Is a new C-based programming language really needed?

Sometimes you hear a quote that is simply too good to pass up. It is one you want to repeat. Today I read an article where Randall Kennedy stated that "Microsoft's entire marketing campaign for Windows 7 is predicated on a lie."

Wow.

Their entire marketing campaign for Windows 7? That is a bold statement.

InformationWeek states that Microsoft is pushing the idea that the community helped to make what Windows 7 is. They state that Microsoft is indicating that customers shaped what Windows 7 is. InfoWeek then goes on to state that this is not true. That Microsoft had a solid understanding of what they wanted Windows 7, Microsoft didn't really bring on people until later, and that they are on record as ignoring feedback and requests for earlier access.

So did customers shape Windows 7?

InfoWeek goes on to make an even bolder statement. They take credit for shaping Windows 7.

Windows 7 is a Better Vista

Windows 7 is a better version of Vista. I believe nearly everyone will agree to that. I agree that feedback on Windows 7 was late in the process and had limited impact on the final product. I do believe, however, that most of the changes for Windows 7 were decided before a lot of the public input was obtained from the betas. I believe most of the public feedback on the product was obtained with the release and use of Vista. I believe the community did drive Windows 7, but that they did it as feedback on the horrible issues that Windows Vista presented. I believe Windows 7 is more like a new release of Windows Vista, only done better because little things are fixed and drivers already exist.

Did we shape Windows 7 like Microsoft stated? I'd argue that we had a big impact on it. I surely wouldn't give InfoWeek all the credit, nor would I state that Microsoft ignored its community. After all, ignoring your community is a quick way to failure.

What do you think? Is Microsoft lying?

Tilera has announced that they have created the world's first 100-core chip — the 100-core TILE-Gx100. This chip claims to have four times the performance of any chip announced to date. They claim to have ten times better computing efficiency than Intel's next generation Westmere processor.

So what's the downside?

Tilera is a relatively new company that was started around 2004. While that could be a negative, they seem to have funding to keep them going. More on the downside is that the architecture of the chips is different. It doesn't use the x86 architecture that Intel and AMD use.

With recent (or near future) releases of Windows 7, Windows 2008 R2, SharePoint 2010, and Silverlight, it is no surprise that a new release of Visual Studio is coming soon. According to The Register, Visual Studio 2010 will release on March 22, 2010. They reported that Beta 2 will be available to MSDN subscribers today (it was not there at the time I wrote this), and that it would be publicly available on October 21st to everyone else.

Also reported was the reduction in the number of different editions of Visual Studio 2010. The plan is to reduce the number to four: Visual Studio 2010 Professional Edition without MSDN, Visual Studio 2010 Professional with MSDN, Visual Studio 2010 Premium with MSDN, and Visual Studio 2010 Ultimate.

In the 90s, ColdFusion was all the rage. Good products never die; they just go into maintenance mode!

In truth a lot of ColdFusion is still in use today. In fact, one of our sites, DevX, is written in ColdFusion. As a product, it continues to deliver new features and new editions. Today's new edition was announced is Adob e ColdFusion 9. It was announced along with Adobe ColdFusion Builder Beta 2 and a private beta of ColdFusion 9 in the Cloud that runs on Amazon Web Services.

Adobe made the following comment on ColdFusion 9 in their press release:

ColdFusion 9 accelerates the development cycle by reducing complex and powerful business logic into a few lines of code. ColdFusion 9 applications easily access data from existing enterprise infrastructure including Microsoft SharePoint, Microsoft Office files and Java J2EE portlet standards. New ColdFusion 9 features include an Adobe® AIR® application for managing multiple ColdFusion servers from one location, saving performance time and reducing redundant tasks. ColdFusion 9 also offers local and remote database synchronization with Adobe AIR, giving users access to applications regardless of Internet connectivity. Also, deep integration with Hibernate's object relational mapping (ORM) provides developers with database independent applications.

You can find more information on the Adobe ColdFusion releases at http://www.adobe.com/products/coldfusion.

So are you using ColdFusion? If so, are you doing maintenance or new development?

I've looked at getting an eBook reader for quite a while now. My wife was going to buy me a Sony eReader for Father's Day when they were super discounted at Borders; however, they were sold out all around town due to the low price. If you go to a store that has ebook readers, it is hard to resist picking them up and poking on one. Some of the off brands are not the coolest devices, but the Sony and Kindle eBooks work as small, lightweight devices to read books.

But I contend that today's eBooks are a fad.

If you think about it for about one second, it should be obvious as to why they are a fad. In today's world of Internet Connectivity, why would you want a device that costs several hundred dollars that does only one thing. For the same price you can by a netbook that not only let's you read books, but also surf the Web as well as run your own programs. What is to prevent an eBook reader from surfing the Web? Why can't it work as a touch screen browser? Why can't it have color? Why can't it store my documents or also do the things a PDA does such as keep my calendar and show me my emails? I believe eBooks will do all of this. When netbooks take on the ebook format-- thus being more of a micro-tablet, then today's simplistic ebook readers will fade away like an oversized CRT monitor.

The technology today doesn't seem to be fitting netbook/tablet functionality into the eBook format, but it is getting closer. Of course the rumors of the Applet tablet have been circulating for months.

Another device that has the potential to send current eBooks to the history book can be seen on Gizmodo. This is the Microsoft Courier device that is in the late prototype stage. The device is more of a book format and really takes the features of PDA, eBooks, and tablets and combines them into one. Take a look at the following video and see if you don't agree that today's eBooks just don't cut it anymore!

Datamation has recently published a couple of interesting articles you might find interesting. The first is Why Developers Get Fired. If you are feeling comfortable in your job, you might want to take a look at what Eric Spiegel has to say.

Have you seen the salary surveys posted around the internet and in magazines? If so, then A second article published on Datamation is worth a quick look. Are These Developer and IT Salary Figures Accurate? asks a question worth considering as you look at the numbers posted in these surveys.

A name like MiniFuzz File Fuzzer sounds like something you'd either read in a Dr Seuss book or on April 1st; however, Microsoft released this tool yesterday to provide "an easy to use, customizable solution for spotting unexpected application behavior."

Also released yesterday was the Microsoft BinScope Binary Analyzer. While this name isn't as fun as File Fuzzer, it still rates high on the geek scale for product names. In brief, the BinScope Binary Analyzer provides analysis of binary code to help you understand if your applications are vulnerable to common security coding errors.

You can download both tools freely from http://msdn.microsoft.com/en-us/security/cc421514.aspx along with a number of other Microsoft Security Development Lifecycle (SDL) tools.


The Network for Technology Professionals

About Internet.com

Legal Notices, Licensing, Permissions, Privacy Policy.
Advertise | Newsletters | E-mail Offers