The New iPhone, The $99 iPhone, and Snow Leapord

June 8, 2009

It’s tech conference season, and as such there have been lots of new technology announcements over the last few weeks. With Windows 7, Office 2010, Project Natal, Bing, and Google Wave, to name just a few, announced, it’s been an exciting year in the technology world.

This week was no different. This time it was Apple’s turn to add some new products to the mix. The biggest announcement at their WWDC 2009 conference was the June 17 release of the iPhone 3G S. This new generation of iPhone is faster, has a better camera, and a better battery. They dropped the 8GB and the 16GB of the iPhone 3G S will cost $199 with new contracts (or renewals after two years).

In addition, the iPhone 3G 8GB will now cost $99 with new contracts (or renewals after two years).

Apple’s other major announcement was the pending release of their new operating system, Snow Leopard. To be released in September, the new Mac OS will cost $29 to upgrade from Leopard.


Windows 7 Release Date

June 2, 2009

Microsoft just a few minutes ago announced that Windows 7 will it store shelves on October 22, 2009. The RTM will occur during the second half of July. Also, a Windows 7 update program that will be available for some new PCs will be beginning shortly.

After all of the false-alarms (I recently even saw a magazine say that it would be released on June 3), the count-down will finally begin. But will you see me first in line come October 22? Nope.

After the whole Vista experience, I think I’m going to sit tight for at least a few patches. I know the Beta and the RC look promising. I know that I’m excited about it. But I actually use my computer, and I don’t want to experience any avoidable problems. Vista works for me (I found that if you feed it enough RAM, it’s happy enough), and I’m happy to stick with it for a little longer. That, and I don’t really feel like coughing up whatever it will cost (I’ve heard some pretty high numbers, but I haven’t verified any of them). Talk to me in October and maybe I’ll have changed my mind, however.


Bing Goes Live This Morning

June 1, 2009

A few days late, Microsoft this morning launched their new Bing search engine. live.com will now redirect to bing.com, as Bing is the replacement to Live.

Here’s a general review of it. Before we start I wanted to point out that, at the time of this writing, Bing still has “preview” below it’s logo. I wonder if this is simply an oversight, or if this is Microsoft’s equivalent to “Beta”…

First of all, and I know this is really basic. I like the home page. It’s interesting. The background changes daily. I personally like it better than a white background with occasional logo variations…

Next, categorized search. Say you were to type in some movie, Ironman for example. On the search results page, you will be given the standard results, images on top, as normal. But if you take a look on the left, you’ll see various categories within your search (script, images, trailer, etc). If you were to click on the trailer button, it will do another search for “ironman trailer”.

The next feature I want to show you is one that has been given some bad feedback around the internet. If you’re still on that “ironman trailer” page, you will see some trailer videos on the top of the screen. If you were to hover over one of them, the trailer will begin playing, right there in the search engine. This is a neat feature, but here’s what has some (including me) concerned. If you’re not careful with your safe-search settings, Bing will preview anything. Not the best plan in the world.

Another feature is a text preview of websites. Many times, I don’t know whether a site is worth my time to see if it contains what I’m looking for. Bing has a feature where if you hover over the right side of a search result, Bing will give you a text preview of the website.

One more feature that stood out to me. Travel search will compare airlines, rental cars, hotels, etc. This isn’t anything new, but it is certainly convenient to have it all in one place (with search, etc.). It will also compare it’s results with other companies like hotwire.com, expedia.com, etc.

To close, I think I’ll keep using Google for my search, but I think Bing might be a close second. If I were a big Windows Live guy, maybe. But I’m not, I’m a Google-ite.

How about you? The comments are open for you to share your likes and dislikes of the new Bing.


Google Wave – A New Generation In Cloud Computing

May 28, 2009

Google today released information about their newest product. To be released later this year, Google Wave has the potential to truly revolutionize cloud computing. In the keynote from today’s I/O conference, some of the Google team did a demo on what might be the most significant piece of technology released this year.

Unlike normal internet applications like email, photos, and documents, Google Wave is in real-time. It is a fully collaborative system. Instead of the standard “threads” or individual emails, conversations are organized as “Waves”, which can be thought of as living conversations. It works similar to Email and IM, except that typing is in real-time (optionally), cutting down the time it takes to process the other users information. Also, you can insert a response to an entry at any point, making responding to an earlier message a snap. With email, you would have to go and dig up the email within the thread and edit it all out. With Google Wave, you can add it at any point in time.

Wave is multi-user, so you can add anyone to a “Wave”. The neat thing is that you can specify access settings to each individual message in a “Wave.” So if you have 3 of your buddies talking about something and you want to give a brief aside to one of them, you have that option.

Other features include maps, blogs, pictures (including drag and drop from desktop, provided you have Google Gears installed), and a full API, allowing you to write your own apps for it.

Google Wave is opensource, making development for it easier.

I will be posting more information on Google Wave as the project becomes more developed.

You can view the Google Wave home page, with the keynote from Google’s I/O conference, here: wave.google.com/. From this page you will be able to link to some of the preview pages.


Tony’s Geek Tips For Mobile!

May 28, 2009

If you like to read Tony’s Geek Tips on your mobile device, it just got easier. The next time you browse to tonysgeektips.com with a mobile device, you will be greeted with an easier to navigate interface that will allow you to find what you’re looking for much faster. Please note that tonysgeektips.wordpress.com does not support this feature.


Skype 4.1 Beta

May 28, 2009

Yesterday, Skype released their new Skype 4.1 Beta. Apart from bug fixes and minor additions, the major new feature is built-in screen-sharing. Although the Mac version has had this for awhile, it will now be available for Windows. To use it, both users will need to have Skype 4.1.

Other notable features include contact sharing, birthday reminders (really nice for those like me who can’t keep birthdays straight), and extended contact importing capabilities (adding support for “email content providers”).

Again, this is a beta, so there will probably be some bugs in it. This isn’t like installing a service pack or OS beta, though. so don’t lose sleep over it.

You may download it here: http://www.skype.com/download/skype/windows/beta/

The release notes are available here: http://share.skype.com/sites/en/2009/05/27/Skype%20Release%20Notes.pdf


Windows Vista SP2 Released

May 27, 2009

Microsoft yesterday released the Windows Vista Service Pack 2. I’ve gone over some of them major new features in the past, so I won’t go into it in this post. Microsoft put together a list of the new features here.

It has not yet been included in a Windows update yet, but the direct installers can be found here:

X86 – http://www.microsoft.com/downloads/details.aspx?FamilyID=a4dd31d5-f907-4406-9012-a5c3199ea2b3&DisplayLang=en

X64 – http://www.microsoft.com/downloads/details.aspx?FamilyID=656c9d4a-55ec-4972-a0d7-b1a6fedf51a7&displaylang=en


Web Development – The Next Level

May 22, 2009

Don’t forget to visit our new site, tonysgeektips.com! You can view this exact post at our new site here.

So you know HTML, CSS, maybe a little JavaScript. If that’s as far as you want to go in your web development skills, then great. But if you’re like me, then you’re looking for something more. You see all of these incredible web sites, like Amazon or Ebay, and you wonder, “How in the world do they do that?”. That was the question that opened up a whole new world for me.

If you take a look around at the modern Web 2.0 experience, you will see all sorts of really neat things. Technologies like AJAX, Server-side web applications, data-driven content, and so much more. The web is becoming more and more like the desktop every year. It truly is an incredible platform, with the ability to connect users to data and even users to users from all over the world.

The rate at which it is all changing and improving is another incredible aspect. Bill Gates, while addressing the University of Washington in 1998, said:

“Sometimes we do get taken by surprise. For example, when the Internet came along, we had it as a fifth or sixth priority. It wasn’t like somebody told me about it and I said, ‘I don’t know how to spell that.’ I said, ‘Yeah, I’ve got that on my list, so I’m okay.’ But there came a point when we realized it was happening faster and was a much deeper phenomenon than had been recognized in our strategy.” (Source: http://en.wikiquote.org/wiki/Bill_Gates)

Now it is, some would contend, the primary place most do their computing. From email, to social networking, even to online banking, this is an incredibly diverse platform. It would be foolish for serious web developers or programmers to ignore the web as not only a place to store online brochures (i.e. the classic 4 page “home, about us” website), but as an incredible programming platform.

But how does it work? How are web applications made? For those who have only done HTML and CSS, you will find a whole new world awaiting you. In this post I will explain at a basic level how web applications run. I will keep this as platform specific as possible (although I am horribly biased toward a certain family of technologies)

Introduction Into Web Applications

First, let’s define a web application. Turning to Wikipedia:

“In software engineering, a web application or webapp is an application that is accessed via web browser over a network such as the Internet or an intranet. It is also a computer software application that is coded in a browser-supported language (such as HTML, JavaScript, Java, etc.) and reliant on a common web browser to render the application executable.” (source: http://en.wikipedia.org/wiki/Web_application)

So a Web application is simply an application that is on the internet. I will explain it in a slightly more technical way then Wikipedia does:

“A web application is an application that is hosted on a web server that renders content that it processes to the user in common browser languages (e.g. HTML). Due to the page content being processed on a server (as opposed to the client), the server handles the “thinking”, instead of being limited to whatever variety of resources are on the client’s system.” (source: Jack Chapa)

Think about what this means. In traditional web sites, you would need to be sure that everyone could use your application by ensuring that the user had the necessary technology to do so, forcing you to go to the lowest common denominator. With server-processed web applications, you can use all of the technology that the server has. The server will send the HTML to the user. Basically, the server is the brains of the application, instead of the user’s system.

Here is a diagram that will help explain the differences:

programming-server-diagram

The ability to harness the full power of the server instead of relying on the client enables much more powerful applications.

Examples of Web Applications

All of this theory is well and good, but how about some solid examples? I won’t go into actual coding in this article, as my purpose is to provide a very, very high-level introduction into what web applications are.

The first example I will use is the website. It is powered by the WordPress software. Take a look at the URL of this article. It probably looks something like:

http://www.tonysgeektips.com/index.php?p=696

If the “index.php” part isn’t there, don’t worry about it. Because “index.php” is the default page, it is assumed that the URL address is referring to it.

Okay, so what does this have to do server side programming? Take a look that last part, the “?p=696”. Without going into all of the details, the “?” symbol tells the server that from here on out, everything in the URL will be a “query string”.  The query string is a place to set values that the server will/might need. In this case, the query string tells the server that that the browser is requesting the page “index.php” and that “p=696”. When the server recieves the request, it loads up the index.php page. The page then has some logic that looks to see what the value of “p” is in the query string. In this case, “p” is referring to the ID of the page. Where is the id/page stored? In a database, which is a place located on the server that stores information. So you see, one of the applications of server side programming is that you can have one page that displays differently depending on what is passed in via the query string. All of this happens on the server, not the client. Do you see how powerful it is?

Of course, the query string is only one example of the vast number of possible uses of server-sided applications. Other examples include e-commerce, RSS feed generators, or CMS systems (like wordpress) to name a few. The sky is pretty much the limit.

Wow, This is Pretty Slick Stuff. How Do I Start?

I’m glad you asked. There a many different technologies out there for web application development. The technology you should choose depends on what you are trying to get done. I won’t go into many details on each individual technology, as each one is incredibly vast. Here is a list of the most popular ones:

  • Microsoft .Net
    • .Net is a framework containing technologies such as ASP.Net, C#, VB.Net, and SQL Server. This is what I personally use in my development, and couldn’t recommend it more for an all-purpose, well-documented, platform. From a foundational level, it was incredibly easy to learn, but has tremendous power as you get more advanced.
  • LAMP
    • The combination of Linux Apache MySQL and PHP make up the core of the open-source family of web development. I have worked with this a good bit, and it has some pluses and minuses. I would never personally use it for my own applications, but by saying that I open up a whole can of worms. =D
  • ColdFusion
    • This is Adobe’s platform for application development. I like Adobe and don’t doubt that this a high quality platform, but I haven’t seen this one widely used, so I would use caution before choosing it. I have never used it myself, so I can’t offer much on it, however.
  • Java Server Pages
    • Web sites using the popular Java platform. Again, I have no personal experience with this, but have a lot of respect for the Java platform.

In addition to those, you also have Ruby on Rails, Perl, and many others.

In Conclusion

I have only barely thought about scratching the surface with this article. In order to really begin, you need to do a lot of research and get a book. A great place to start with the .Net world is with the Microsoft Visual Web Developer Express Edition (don’t worry about the other express editions for these purposes) and a book (Beginning ASP.NET 3.5 in C# 2008 is a good one). For PHP, all I can do is direct you to www.php.net and recommend you getting a book. Do an Amazon search for “PHP 6”.

Please feel free to ask your questions and share your experiences and suggestions in the comments.


New Google Labs Feature – Inbox Preview

May 21, 2009

Today, Google announced a new Gmail lab feature, Inbox Preview. If you enable this, it gives a preview of the first ten items in your Gmail inbox while your inbox is loading. Those on dial-up, rejoice! You can forget about waiting for that page to load only to find an empty inbox.


How To Mac-Out Your PC

May 21, 2009

Don’t forget to check out the new Tony’s Geek Tips. Here is a direct link to this post at that location.

Despite all of the Mac vs. PC arguments, many people will agree that Macintosh OS X looks really cool. The dock, the wallpaper, the smoothness. Everything just seems to flow together so seamlessly. For those out there who don’t own a Mac (like me and roughly 95% of the population), there is a way to make your PC look somewhat like a Mac. Sure, you won’t get all of the built-in features like software, hardware, etc., but with a little bit of tweaking, you can make your PC look astonishingly like a Mac.

Here’s a few screen shots of what my finished Mac-ified PC looks like:

With Stardock's ObjectDock™, hiding the Windows Taskbar, and cleaning up the desktop icons, you can get the Mac-ish feel

With Stardock's ObjectDock™, hiding the Windows Taskbar, and cleaning up the desktop icons, you can get the Mac-ish feel

As you can see, I have a dock on the bottom, which is incredibly smooth. On the right side, it displays all of your currently open applications. This dock, called ObjectDock, is supplied by Stardock, the makers of some pretty slick software. At the time of this writing, you can download ObjectDock here: http://www.stardock.com/products/objectdock/

The ObjectDock has many features. To access them, click on the “Configure Dock” button which resides on the dock.

Here is how I got my machine setup after downloading StarDock:

  1. Get some wallpaper. I got it from http://thedailymac.com/wp-content/uploads/2007/10/space-desktop.png. You will probably need to convert it to a .jpg to get it to work, though.
  2. mac-pc-4

    With my Windows Taskbar set to Auto-hide, I can access all of the standard Windows functions.

  3. Next, move your Windows Task Bar to the top of your monitor. Also, set it to auto-hide (right-click the taskbar -> Properties -> Check “Auto-hide the taskbar”). That way, you can primarily use the dock, but have the ability to access the Windows task bar if you need it.
  4. Clean up and move your desktop icons. I’ve never seen a Mac with lots of icons cluttering it. Clean up the ones you don’t use. I actually have a folder on my desktop where I put my miscellaneous files. I find that this makes it easier to organize my desktop. If you want to completely hide all of your icons right click anywhere on the desktop, and under the “View” menu uncheck “Show Desktop Icons”. This doesn’t delete them, but simply hides them.
  5. The ObjectDock has many options, including customizable zoom on hover

    The ObjectDock has many options, including customizable zoom on hover

  6. Within the dock itself, there are numerous settings you can adjust. It’s pretty self-explanatory, so I’ll let you play around with it. Feel free to comment with specific questions.

And with that, you now have a Mac-itized computer. There are many more things your can do to add to the feel, like adding Mac mouse cursors, getting the Safari 4 Beta, and of course, iTunes.

Do you have any ways you like to alter your Windows computer? The comments are open for you to share the various ways you add some additional flavor to your Windows experience.