New (Permanent) Online Residence

March 23, 2008 by Jerome Baum

My very own online real-estate piece, this time a permanent one:

http://www.jeromebaum.com/ (SSL Version, note that you may need to install the CA certificate).

Visit JeromeBaum.com and take a look at my new website. It also features a little blog (called JBlog), although I must honestly say that it probably won’t be all that active. I prefer modifying the website itself. I also have not got any sort of syndication set up either.

The site contains contact information and a little curriculum vitae for those that are interested.

Google Mail, Outlook Web Access, Spam Filtering

January 7, 2008 by Jerome Baum

Outlook Web Access has a very bad spam filter. Google Mail on the other hand has a brilliant spam filter.

Now, Gmail added a POP3 checking feature some time back, and I would have been more than happy to use it, but POP3 is not enabled on our Exchange server. So what to do? No IMAP either, only OWA is available.

I went out googling for an answer, and there are hundreds of dysfunctional proxies to POP-enable an OWA-enabled Exchange server. I could not find a single proxy which is functional. So I decided to take the proxy which is available from here (originally designed to be used on an iPhone) and made some corrections to the code.

The corrections I made included locking the proxy to only work with a particular Exchange server (don’t want to leave a proxy open for the world to use…) and fixing some bugs in the code. Then, I uploaded the tool to one of my VPSes and ran it in the background. After adding the account via POP3 in Google Mail, it works pretty fine and filters almost a all of my spam.

Only one thing to worry about now: the locking of the mail box when it gets too full, but that’s not a major issue.

While at it, I decided to write a notification tool which will notify me via SMS when there is new mail in my Gmail that has a certain label applied. SMS alerts are now very easy to arrange, just create an appropriate filter and I’m done.

If you are interested in the actual code, you are more than welcome to email me at gratemyl@gmail.com. I may also be able to provide some kind of hosting, but the SMS cost money per message and are cut off at 160 for now (a limit which is easily adjusted).

Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools BookmarkingTools

How are Web Applications Developed?

January 6, 2008 by Jerome Baum

This post is part of the series on web application development. See this post for more information.

Next week’s topic: How are web applications developed? What languages and frameworks are used?

The new week is about to start, but let me first summarize the previous week. This week I looked at differences between web and desktop applications, and came up with the following key differences:

Key Difference #1

One major distinction between desktop and web applications is the location where data is stored. A desktop application typically stores its data on the computer on which it is running. A web application, on the other hand almost always stores its data on the server where it is hosted.

The principle of storing data on a central server makes data sharing easier. An example of a great data sharing tool is Google Groups. Anybody can create a new group where people can post messages in a forum-style manner. Sure, formatting text with Microsoft Word is far easier and the text (sometimes) ends up looking nicer, but sharing that content with the world is far more difficult.

Key Difference #2

The second major distinction between web and desktop applications is that web applications do not require installation and upgrades, at least not from the user’s point of view. Once they are upgraded on the server, the upgrade is automatically pushed to the client.

Because of this, the end-user is more inclined to use a web application and can be provided with constant updates, therefore using the most up-to-date release version of the software at all times.

Key Difference #3

The third major distinction between web and desktop applications and the final difference I will be looking at is the fact that web applications require the computer to be connected via some kind of network to the server on which the application is hosted. In addition, depending on the speed of the network connection, there may be lag/delays in the application.

Upcoming Week

This coming week, I will discuss methods used to develop web applications. This includes frameworks, building on existing applications and other ways of getting the job done, such as the use of design patterns.

While I previously compared web applications to desktop applications, I will not do this in the following week, but I may be comparing web applications to other web applications or frameworks at some point.

Information, Data, Databases: Comparing Microsoft Access to Jupiter IT Scaffold

January 4, 2008 by Jerome Baum

This post is part of the series on web application development. See this post for more information.

The final comparison post this week on the series is here to take a look at database systems. But I am not talking about huge systems like MySQL, Microsoft SQL Server and the like – rather about smaller systems which are designed for less technical end-users. Something among the lines of Microsoft Access, again part of the Microsoft Office package, as well as Jupiter IT Scaffold, a less well-known piece of software.

Microsoft Access

Microsoft Access is a desktop database system. More specifically, it is an RDBMS (Relational DataBase Management System), so you can specify relations between different tables. It is easy to create tables, queries, forms and reports using wizards or using a visual editor and, where appropriate, a WYSIWYG (What You See Is What You Get) interface. Macros and a programming language known as VBA (Visual Basic for Applications) are both available.

Jupiter IT Scaffold

This software is currently (Jan 4, 2007) in beta. Take a look here. Like with Microsoft Access, tables can be created using a visual editor. However, unlike Microsoft Access, Jupiter IT Scaffold does not have any visual interface for designing queries, forms or reports. Instead, Scaffold requires the database/application developer to program all of the front-end except for the basic table view.

Comparing the Two

Again, there are differences between the two pieces of software. These differences lie in the developer interface and end-user experience, and are as follows:

  • Programming Experience
    The developer using Scaffold requires more programming experience than the developer using Access. Only tables can be designed using a visual editor.
  • Reaction Time
    When an end-user performs an action in a Scaffold application, there is a delay. This isn’t the case with Access, since Access is a desktop application.
  • Connectivity Requirements
    This point connects with the previous one. A Scaffold application cannot be used without a network connection, while an Access application can be used without a network connection.

Key Difference #3

The third major distinction between web and desktop applications and the final difference I will be looking at is the fact that web applications require the computer to be connected via some kind of network to the server on which the application is hosted. In addition, depending on the speed of the network connection, there may be lag/delays in the application.

Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools BookmarkingTools

So You Want to Send Emails? Outlook vs. Gmail

January 2, 2008 by Jerome Baum

This post is part of the series on web application development. See this post for more information.

Last time I compared PHP Pastebin and Notepad++, two pieces of software for editing plain-text documents. I also mentioned Google Groups and Microsoft Word briefly.

This time, I want to look at Microsoft Office Outlook and Google Mail.

Microsoft Office Outlook

You should know what this is. Sold by Microsoft as part of the Microsoft Office package, Outlook is an advanced email client which supports IMAP, POP3, SMTP and Exchange next to a few other protocols. I will focus on the email-related features of Outlook and ignore the scheduling and other miscellaneous features.

Google Mail

Go to mail.google.com to see this live in action. You cannot download this software, as it is proprietary and hosted by Google for Google. However, you can sign up for an account and try it out, maybe you’ll even keep the account, I did (gratemyl@gmail.com – I never have to worry about spam, btw, kudos to Gmail). Again, I will focus on the email-related features and ignore chat functionality, tagging, etc. for now.

Comparing the Two

This time, we are talking about email applications used to send and receive email. This is a pretty simple task, but it is important to note some major distinctions between both pieces of software:

  • Protocol Support
    While Gmail is only capable of accessing the Google Mail servers, Outlook can connect to any server using several different protocols.
  • Installation
    Outlook comes as part of the Office package and can be installed on its own (without the other components in the package). However, Gmail doesn’t require any sort of installation at all.
  • Maintenance
    In addition to requiring no installation, Gmail can be automatically updated and upgraded for all users without requiring them to download anything (or to be technically correct, there is a download, but that is transparent to the user).

Key Difference #2

The second major distinction between web and desktop applications is that web applications do not require installation and upgrades, at least not from the user’s point of view. Once they are upgraded on the server, the upgrade is automatically pushed to the client.

Because of this, the end-user is more inclined to use a web application and can be provided with constant updates, therefore using the most up-to-date release version of the software at all times.

Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools BookmarkingTools

Happy New Year!

January 1, 2008 by Jerome Baum

I am a little bit late with this post, but here it is anyway:

I wish you all a happy new year and hope you all have some good resolutions (?) – I actually don’t really, but I guess I will figure some out this week.

Do feel free to post your resolutions here, I would be more than happy to see them. Anything blog related? - The usual health stuff? We’ll see.

Have a very nice day, and take a look at this if you want to know more about Google’s logo for today.

Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools BookmarkingTools

Some Basic Applications Compared: PHP Pastebin vs. Notepad++

December 31, 2007 by Jerome Baum

This post is part of the series on web application development. See this post for more information.

The first two applications which I will compare this week are PHP Pastebin and Notepad++. Let’s take a closer look at the two applications:

PHP Pastebin

This is a web application available from here and you can see it in action here. What you do is paste some text/code into the textbox and submit it. It will then be available at a provided URL for the time period you chose, optionally with syntax highlighting. It’s a great tool for collaboration, especially when using instant messaging.

Notepad++

This one has got to be a desktop application – duh! It is available from here. To see it in action, you’ll have to download it. It’s pretty much the plain old notepad that comes with Windows XP, with lots of features added, such as syntax highlighting, tabs and macros.

Comparing the Two

As you will have noticed, both applications have a syntax highlighting feature. But a number of differences show up between them immediately:

  • Macro Support
    Notepad++ supports macros, Pastebin does not. How come? Web applications barely ever support macros, since they are far too difficult to implement in the browser (JavaScript is a keyword here, I will be taking a look at implementation details next week).
  • Tabs
    Notepad++ has tabbing features, Pastebin does not. It is more difficult to implement tabs in web applications than in desktop applications, but is it do-able? The answer: yes, but it is probably easier to use the integrated tabbing features in browsers like Firefox.
  • Sharing Capabilities
    Sharing a URL which points to a Pastebin document is easier than sharing a file saved with Notepad++. The reason lies in the nature of web applications, and is one of the key differences between web and desktop applications…

Key Difference #1

One major distinction between desktop and web applications is the location where data is stored. A desktop application typically stores its data on the computer on which it is running. A web application, on the other hand almost always stores its data on the server where it is hosted.

The principle of storing data on a central server makes data sharing easier. An example of a great data sharing tool is Google Groups. Anybody can create a new group where people can post messages in a forum-style manner. Sure, formatting text with Microsoft Word is far easier and the text (sometimes) ends up looking nicer, but sharing that content with the world is far more difficult.

Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools BookmarkingTools

What are Web Applications and how are they Different?

December 31, 2007 by Jerome Baum

This post is part of the series on web application development. See this post for more information.

This week’s topic: What are web applications, and how are they different from classical (desktop) applications?

The question might seem very obvious, but it is an important one to ask, especially if you are new to web application development. For those who are not new to the area, this should serve more as a refresher/reminder.

There are several ways to look at the question and a hundred ways to answer it. I will mainly be taking the technical point of view.

Throughout the week, I will be comparing different aspects of several pieces of software, including:

  • Gmail
  • Google Groups
  • Scaffold (by Jupiter IT Solutions)
  • Microsoft Word
  • Microsoft Access

Using these I will be demonstrating major differences between web and desktop applications, but will try to mention similarities where possible.

Series: Web Application Development

December 30, 2007 by Jerome Baum

This is the beginning of the first series on the blog, quite an exciting post. The series is called “web application development”. In this series I will be taking a look at the different factors involved in the development of web applications and the many development approaches which can be taken.

Specifically, I will be focusing on the following:

  • What are web applications, and how are they different from classical (desktop) applications?
  • How are web applications developed? What languages and frameworks are used?
  • Picking a development environment is important, but how to make this choice?
  • How does development methodology for web applications differ from the methodology used to create desktop applications? What do “DRY”, “design patterns” and “what, not how” really mean?

These four topics will be covered over a period of one month (four weeks, actually). Each week, I will introduce the next topic and start answering the question. Please, feel free to comment on any post, including any questions you may have or errors that you find.

EDIT: I created a page to contain links to all the posts in the series. You can find it here.

Social Bookmarking on WordPress.com

December 30, 2007 by Jerome Baum

No plugins. No javascript. No theme editing.

I don’t want to go on a rant about WordPress.com, but HOW DO I ADD SOCIAL BOOKMARKING BUTTONS?

Turns out there is a Greasemonkey script (available here). But first I had to fix an error in the source code (line 58 needs a change from “premon” to “premonth”). Maybe somebody wants to submit a permanent fix and improve it a bit. After all, there are lots of other social bookmarking sites.

I might even do this myself and post it here.

Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools Bookmarking Tools BookmarkingTools