Jul 9 2008

Microsoft DreamSpark

Even thought I am a Windows user, I am no where near a Microsoft lackey but recently I learned that Microsoft is giving away a ton of professional grade software to students. Through the Microsoft DreamSpark program, students can get access to Visual Studio 2008 Professional, Windows Server 2003 Standard Edition, Microsoft Expression Studio, XNA Studio, XNA Creators Club, SQL Server 2005, as well as other free software such as their express edition software. That is well over $1,500 of free software. I am typically not a Microsoft fanboy but I do have to give credit to Microsoft for making its development tools free of charge to students across the world. Now I wish Adobe would do the same.

Technorati Tags: , , , , , , ,


Oct 27 2007

Top Programming Books on Google Book Search

Here is an extensive list of top programming books available for preview on Google Books. Google Books provides scans of thousands of textbooks. The scans are not the best, most books have visible scan defects in them.

Even though the scans are not the best, there are some features that just work well. Just like Google Maps, where you can send a link to a map (with a set size, address, etc), with Google Books you can send a link to a specific page in a certain book with specific words highlighted. Google also has handy links such as the table of contents, popular passages, and where to buy the book (perhaps in a better quality PDF format).

All the books listed here have a ‘limited preview’, meaning that some pages are not available for viewing but for the most part you can browse through most the the book. Google Books does indicate the pages that are not available.

Java
The Java Language Specification
Effective Java Programming language
Java: The complete Reference
Java In A Nutshell
Head First Java

C/C++
Practical C++ Programming
C++ The Core Language
The Concurrent C Programming Language
C++ Primer Plus

.Net/C#
The C# Programming Language
The Visual Basic .NET Programming Language
Pro C# 2005 and the .NET 2.0 Platform
Learning Visual Basic .NET
VB.NET Language in a Nutshell

Python
Python in a Nutshell
Learning Python
Visual Quickstart Guide: Python
Python Pocket Reference
Python Cookbook

JavaScript/DOM
JavaScript: The Definitive Guide
Beginning JavaScript with DOM Scripting and AJAX
The Book of JavaScript
The Complete Reference JavaScript
JavaScript Bible
DOM Scripting

Ruby/Rails
Ruby in a Nutshell
The Ruby Way
Beginning Ruby
Ruby on Rails: Up and Running
Rails Solutions: Ruby on Rails Made Easy
Beginning Ruby on Rails E-Commerce

PHP
PHP in a Nutshell
Programming PHP
PHP Cookbook
Learning PHP and MySQL
Learning PHP 5

Database
Visual Quickstart Guide: MySQL
MySQL Cookbook
MySQL in a Nutshell
MySQL Tutorial
Programming SQL Server 2005
SQL Server 2005: Developer’s Guide
SQL Server 2005: A Beginner’s Guide
Beginning SQL Server 2005 Express

Technorati Tags: , , , , , , , , , , , , ,


Sep 6 2006

Outlook Fun With Scriptom

It is soo true that if you work for a startup you end up wearing multiple hats. I work for a very small startup and I wear more hats that the Queen of England. One of those hats is of a Visual Basic developer. Most business applications are not fancy or web two point ooh-y, they usually involve some charts, some graphs, and some integration with Microsoft Office products.

As most script kiddies know, with a little Visual Basic code you can write scripts to open, write, and send emails, generate excel documents, print word documents, and so much more. Fore example, here is a little bit of vbs code to automate the send button (now if you can automate running the script):

Set objOutlook = CreateObject(“Outlook.Application”)
Set objNamespace = objOutlook.GetNamespace(“MAPI”)

‘ Need to have open a new email window for the following
Set objInspector = objOutlook.ActiveInspector
Set objMailItem = objInspector.CurrentItem

‘ Send the email, after the user presses the okay
‘ button on the confirmation dialog
objMailItem.Send

Now, if you want to pop up a message dialog with the subject of the last email you received, just run the following lines of code:

Const olFolderInbox = 6
Const olFolderSentMail = 5

Set objOutlook = CreateObject(“Outlook.Application”)
Set objNamespace = objOutlook.GetNamespace(“MAPI”)

Set objFolder = objNamespace.GetDefaultFolder(olFolderSentMail)
MsgBox “Subject: ” & objFolder.Items.GetLast.Subject

I have a few more example of Visual Basic code manipulating Microsoft Office products here. If you want to run similar COM code but in Java you can do so using Groovy and Scriptom. I have already mentioned Scriptom before so I will refer you to that post.

Technorati Tags: , , , , , , ,


Aug 8 2006

COM Scripting With Groovy

I’ve mentioned before my use of Groovy in Groovy Closures and Common Groovy Errors. I have also mentioned the need to use Visual Basic scripts to open MS Word, or print an HTML document from Internet Explorer. In this article I will mention how to use Groovy and Scriptom to do COM scripting. Before I integrated with Scriptom I had to write one off Visual Basic scripts and run them from Java by using the Runtime’s exec(String) method. Now I could write the COM script in Groovy. Here is an example of Groovy code that will open a new Outlook mail message window and populate the To field:

import org.codehaus.groovy.scriptom.ActiveXProxy

def outlook = new ActiveXProxy("Outlook.Application");
def message = outlook.CreateItem(0);
def emails = "user1@domain1.com;user2@domain2.com";
def rec = message.Recipients.add(emails);
rec.Type = 1 // To = 1, CC = 2, BCC = 3
message.Display(true);

You can run this code from the groovyConsole once you have Scriptom configured.

Technorati Tags: , , , , ,


May 18 2006

Visual Basic And The Java Platform

This session introduced Project Simplice. According to the speakers, Project Simplice intends to attract Visual Basic programmer to the Java camp. Project Simplice is inspired by Visual Basic and compile Basic code to a class file which runs in the JVM. Basically, this makes the Java platform basically simple to the Basic programmer. The whole project is still at an early stage. The project is not available to the general project yet even. That said they Project Simplice team made some impressive demos.

As a demo, the Project Simplice imported the Visual Basic code for a calculator example written by Microsoft with the original copyright. Once imported they hit the build button to launch a program originally original written for the Windows platform but now running on JVM power. Wow. Now that is some impressive compiler magic. In NetBeans, you can edit the UI in the UI Builder and update the code and have the same context help, color highlighting, and language support that you come to expect from NetBeans.

What was hard to believe was that an exe fractal application written in Visual Basic for the Windows platform ran considerably slower than when that same code was compiled and ran in the JVM. There was general disbelief and awe when that Windows version ran over 10 times slower.

It seems that Project Simplice, or marketing eventually names it, is intended a language that can be used to teach programming to beginners.

Technorati Tags: , , , , ,


May 17 2006

Groovy On The JVM

I attended the Groovy = Java Tech + Ruby + Python for the JVM session. This is a simple equation that makes a lot of sense to me, especially since I develop a lot of Groovy scripts at work. This session was a 101 introduction to groovy. Rob Cope of OpenLogic did a great job at describing the dynamic aspect of Groovy, Closures, Groovy Markup builders such as AntBuilder and XmlBuilder, and the the GDK extensions.

For those not familiar to Groovy. Groovy is a object-oriented dynamic language that runs on the JVM. In Groovy, static typing and semicolons are optional. Groovy has a lot of built-in features missing in Java, such as regular expressions. A great feature of groovy is that it compiles to a class file which can be used in a Java application. According to Rob, “your boss can’t tell if you are using Groovy.”

The one feature of Groovy that I was not at all familiar with was the Scriptom. Scriptom gives you access to COM objects, in a fashion that is similar to VBScript developers. Rob shows demoed Scriptom, he opened Microsoft Excel added values, created a chart, saved the chart to the file system, created a JFrame with a button that use the chart as an icon. More amazing is that he did this without restarting or closing or rebuilding anything.

I am seriously thinking of replacing all our VBscript dependencies from our application. We use VBScript to open and print Word and Excel documents. With Groovy and Scriptom I could do this in the JVM.

Technorati Tags: , , , , ,