Small BASIC

First there was BASIC. Then there was Quick BASIC.I had though we reached the end of the line with Visual BASIC. However there is now a new animal called Small BASIC. The goal behind this version was to make programming fun. It is supposed to be easy to learn. Therefore even young kids are supposed to be able to pick it up.

The author believes that this could be a good first programming language. It is based on dot NET. There are minimal concepts in the language. Some people who have tried it out say it reminds them of Python.

Like most BASIC implementations, it does allow use of the evil GOTO statement. There is built in support for extension libraries. Now there are other simple languages like Python, Ruby, and Alice. However the author says these do not have the same “charm” as small BASIC.

There are a total of 15 keywords supported by Small BASIC. Users have commented that it looks a lot like hackety hack. Others wonder why Visual BASIC cannot be a young developer’s first programming language. I for one know that VB can be a bit complex. I do recall the fun I had with BASIC as a youth. Perhaps even I will check it out.

Layoffs at Microsoft

There has been some bad news at Microsoft recently. Revenue from Windows sales has been low. This is causing the company to miss their earnings estimate for 2Q09. Nobody seems immune from the bad economy.

An outcome of the bad quarter is that Microsoft is laying of 5,000 people. Now Microsoft is a big employer, currently employing about 95,000 people. So this amounts to a little more than 5% of the workforce.

The real damage is in the image. Microsoft is one of those companies that used to dominate earnings year after year. My concern is that this may result in a pullback in product development. We shall see.

Open Protocols

Yesterday I got this month’s issue of Doctor Dobbs Journal. As usual I poured through it immediately. The inside of the front cover had a Microsoft advertisement for its Open Protocols. I had heard this term used before. However I did not know much about it. So I decided to take a closer look at them.

The goal of this initiative is to “create smarter, interoperable products”. Microsoft is providing the specifications for Windows Vista, the .NET framework, Windows Server 2008, SQL Server, Microsoft Office 2007, Exchange Server 2008, and SharePoint Server 2007. The tag line in the advertisement was innovation, quality, and community.

I went to the Microsoft site that hosted the Open Protocols. They are described as protocol specifications for developers. They target Microsoft’s high volume business products. The documentation itself is provided free of charge. However you may need a patent license from Microsoft if you are to use some of the patented technology commercially. This initially made me think there was something not too open about this. In my mind, open usually connotes free of charge.

Now I have always been a little interested in the format of Microsoft Word documents. This was a good opportunity to get some insight into that format. This binary format was indeed covered by the Open Protocols. However the document that describes the Word format was a whopping 19 megabytes. The table of contents alone for the document spanned 13 pages. At least it looks like they are giving you everything you need. I found it a little strange that they provided the information in PDF format.

I have heard some grumbling in the developer community regarding the Open Protocols. Perhaps it was the part about the patent licensing which also took me by surprise. I am going to keep an eye out for more comments from other developers regarding this program by Microsoft.

Managed Services Engine

I read an article on the DevX web site entitled “Virtualize Your SOA with the Managed Services Engine” by Steve Spefanovich. I had not heard about the Managed Services Engine (MSE) before. So I read through it with interest.

Steve said that it is difficult to keep the enterprise SOA up and running. The MSE is a product that eases this pain. Steve reviewed the Windows Communication Foundation (WCF). He said that WCF is split between contract and implementation.

The MSE uses the idea of service virtualization. It provides a service layer on top of the services you provide. The MSE extends rather than replaces the WCF. It acts as a proxy service host, which is the only point of entry to your SOA.

The four major parts to the MSE are the service catalog, messenger, broker, and dispatcher. The MSE runtime server can act as a messenger, as a broker, or both a messenger and broker. It can import existing services. It is also able to version the services you provide.

Only the published service is listed in the WSDL. You can only publish one version of your service at a time. The MSE eliminates tight coupling between consumer and service.

Visual Studio

Microsoft released Visual Studio 2008 this year. This release is also known as Visual Studio 9. Plans for the next version of Visual Studio have been shared with the public. This next version shall be Visual Studio 10. According to the InternetNews web site, there are 4 major “pushes” that come with this new version: experience, customer, platform, and architecture.

Visual Studio has grown to much more than just a code compiler. It includes tools to deal with new user interface models like Silverlight. As you may already know, Silverlight is a plugin for web browsers.

A specific change for the next version of Visual Studio is to improve the C++ performance. That is good news to me as I am a C++ programmer. However right now I am still using Visual Studio 2005 (Visual Studio 8). The next version of Visual Studio shall also have a Windows Presentation Foundation (WPF) editor.

Microsoft is also adding the Visual Studio Extensibility (VAX) to Visual Studio. This includes numerous concepts and components such as the Visual Studio SDK. You can extend the tool using add-ins and packages. Visual Studio will host functional units called packages.

There are some long range ideas for Visual Studio, which may not make it into the Visual Studio 10 release. The tool is to get a WPF look and feel. Instant messaging for users on a team is to be built into the tool. Finally there will be an updated Visual Studio Tools for Applications (VSTA). It is an application customization toolkit based on .NET.

Forefront

I read a couple trade magazines. More often than not, Microsoft has an advertisement on the first page. They are pitching something called Microsoft Forefront. I found it strange that I had never heard of this product. I used to be a Microsoft Man (exclusively using their technologies). So I decided to take a look at what this beast is.

The advertisement itself says that Forefront takes on security threats. Somehow the product makes this task easier. It can help you defend your system. It is being marketed as an integrated family of products. They protect the client, server, and network.

I figured I should go to the source to find out more. So I perused Microsoft Technet. This is where I found out that Forefront is a business security product. Perhaps this is why I have not run into this product yet. I work in the enterprise. But I develop software. I do not deal with enterprise security at all. This tool protects the network by controlling access.

There are 5 main pieces to the Forefront family: client security, security for exchange server, security for Sharepoint, security and acceleration server, and intelligent application gateway 2007. The first one protects against malicious software such as spyware and viruses. The second integrates multiple commercial scan engines. It automatically downloads the latest signatures of new malicious code. The third scan documents going in and coming out of Sharepoint. The forth is a gateway to securely publish content. And the final piece is a remote access solution.

A little more searching on the web gave me the impression that this family of tools provides multiple layers of defense. That sounds good. But I still do not have a hands-on feel for the product. Perhaps I could talk my company into sending me to some training. Or I could do a rotation into the network security group. I think we do a lot of that work for our clients.

Free Products

I discovered a great program from Microsoft called DreamSpark. It provides professional versions of Microsoft software to students for free. You need to verify that you are a student. Then you can download the software at no cost to you. Microsoft does not ship the software to you. However it is the real versions of the software. This is not trial or beta versions.

Here are some examples of software that Microsoft provides through this program. I have included the MSRP of each product to demonstrate the magnitude of this deal:

* Visual Studio 2008 Professional $799
* Windows Server 2003 Standard $999

Microsoft also provides older versions of software through this program such as:

* Visual Studio 2005 Professional
* SQL Server 2005

Recently I have applied to attend college in order to learn some web technologies. So I was very excited to learn about the DreamSpark program. I wanted to get Visual Studio for my home. However I was disturbed to find that my university was not listed as one of the colleges participating in this program. Oh no they didn’t. It is time to get on the horn with my university. Microsoft is offering a goldmine to me through this program. My college needs to get on the ball and sign up with Microsoft. I don’t care if it costs the college a little case. The savings to me are too great.

There is a lot of anti-Microsoft sentiment out there. Yes they are a huge firm that plots to take over the world. But they are offering free software to students. For that they get my respect. I will let you know if I succeed in getting my college to sign up for the program.