Category Archives: tools

Wallpaper Juggler: Downloads are not available from InterfaceLIFT

After Wallpaper juggler was described as cool at lifehacker, there has been a lot of download activity on the project page at codeplex. It seems after getting the app, everyone started downloading high res wallpapers from InterfaceLIFT which, of course, made the guys at InterfaceLIFT mad. After downloading 10 or so wallpapers, it block access to the whole site for the IP address where wallpapers were being downloaded from and returns following message for every request:

Your access to InterfaceLIFT has temporarily been suspended do to misuse of our servers. Please review our Terms of Service for more information. Access will be restored in a couple days. To ensure that you access is not suspended again in the future, please disable any download accelerator plugins or software you may be running.

If you believe you have not violated the Terms of Service, please contact jeff [at} interfacelift {dot] com
Error code: xx.xxx.xx.xx

Ironically, even the “Terms of Service” page doesn’t come up once you are blocked. :)

Personally, I agree to this. There are costs associated to hosting a site like InterfaceLIFT and ads are one good way to support that which doesn’t happen when Juggler pulls those pretty images from the site. But hey, we still have another source right in juggler and we will find more. Only until other sources don’t treat us the same way.

Enjoy!

Anand


Juggler v0.5.2: Wallpaper Changer for Windows Vista and XP (Update 6)

Update 6: Wallpaper downloads are not available from InterfaceLIFT anymore. Read details here.

Update 5: Updated InterfaceLIFT downloader to work with the changed code at interfacelift.com.

Even though the first basic version of Juggler pretty much did what it was supposed to do, there were few ‘nice to have’ things which were missing. So I updated it as soon as I got some free time. :)

Feature set:

Here is the list of features (existing+new) which are now included.

  • Its coded and unit tested to work on Vista and XP SP2 with .Net 3.5. It should work (not tested though) on Server 2008/2003 as they borrow UI code base from Vista/XP. No words for any other OS.
  • It runs in background and can be controlled from System Tray.

  • It can be configured to:
      • start with Windows.
      • look for wallpapers in multiple folders including/excluding sub-folders. Best results when used with matching resolution wallpapers.
      • change wallpaper once every preferred duration between 1 min and 500 hrs. It will understand “000 Hrs/Mins 000 Min” format. It can interpret M/Min/Mins/Minutes and H/Hr/Hrs/Hour as Minutes and Hours respectively.
      • confirm before changing wallpaper
      • adjust image positioning for odd size wallpapers.

  • You can also change wallpaper manually by clicking ‘Juggle Now’ menu or by double clicking the icon.
  • It allows only one instance at a time.
  • It also displays the last updated wallpaper and the time stamp when the next change will occur.
  • It displays a confirmation dialog before automatically changing wallpaper. Its configurable to show a confirmation dialog and for how long the message should be displayed.

  • “Active” option to enable/disable wallpaper juggling while program is running.
  • Last changed wallpaper is a clickable menu which opens the wallpaper in windows explorer.
  • You can download stunning wallpapers from interfaceLIFT.com and WallpaperStock.com using “Download Wallpapers” screen right within juggler.

Download:

This version uses .Net 3.5. Also, the downloads are posted at codeplex.com.

  1. Download and install .Net framework v3.5 if its not installed already.
  2. Navigate to Juggler release page at codeplex to download application and/or source code. The downloads are in Files section.

Implementation:

Most of the stuff is pretty straightforward. It uses Timer class to invoke code to change wallpaper. The invoked code then uses Win APIs to do the job. But there are few things which may interest you.

  1. There are all kind of anonymous method illustrations. You can also find basic as well as complex lambda expressions which, I think, are nothing but fancy anonymous methods invented for LINQ.
  2. It also demonstrates how to use System.Threading.Mutex to find and avoid if user is trying to run multiple instance of same application. This is the simplest and most accurate approach to create single instance application in C# (VB has some out of the box functionality). There is a catch in this approach which may disqualify this in certain cases.
  3. While implementing single instance functionality, I needed to warn user that the application is already running. Simplest way is to just display a message box. But I thought if the already running (first) instance can get a notification from second instance then it can show a balloon tip which will tell user where exactly the application is running. This may sound simple but its not.
    1. As both instance are separate processes, we are talking about inter process communication (IPC) here.
    2. There is no other way than remoting in .Net 1.0-2.0 for IPC. And opening a tcp(forget about http) port seems overkill to me in this situation.
    3. So I chose a self hosted simple wcf service with named pipe binding. May be I’ll post about using named pipes in WCF for IPC later some time.

As always, please use it at your own risk. Feel free to rant in comments. :)

Enjoy!


Using hosts file to block Online Ads

I think most of us will agree on this. Online ads make browsing a nightmare. Well, they make a lot of content free too but at times I felt like I was browsing just ads.

And that’s not it. Most of the time browsers are busy downloading these ads and we think Internet is really slow. So, I thought it’s time to give it a break and make Internet not suck. Read on if you find yourself in the same boat. :)

There are plug-ins for Firefox and IE to block ads but I use Opera. Opera has inbuilt content blocking but that is too much to do as there are a zillion ad servers out there. At times I have to use FF or IE too and this leaves me managing three different applications to block ads. On top of that, putting a plug-in in the pipeline is again adding one more step before you can see the content. And then you have to keep updating them for new releases. Not a good idea, I’d say.

Another way is to use hosts file. Description of hosts file from wikipedia:

The hosts file is a computer file used to store information on where to find a node on a computer network. This file maps hostnames to IP addresses. The hosts file is used as a supplement to (or instead of) the domain name system on networks of varying sizes. This file is (unlike DNS) under the control of the user who is using the computer.

There is a lot of information available on net which you can use to make it work. In a nutshell, here is what you need to do:

  1. Download a hosts file which has updated lists of ad servers. I’m using the one from here and added few missing servers. Can you believe this list has around 6000 entries already? And if you follow the link, please don’t try those shock sites. :( More hosts files can be found here.
  2. Create a backup of your existing hosts file. (just give it an extn say .old.) On Vista, hosts file can be found in [System Drive]:\Windows\System32\drivers\etc. See this to locate on other systems.
  3. Copy the downloaded hosts file in the etc folder. If you are using the site which I did then create another hosts file in etc folder and paste the contents from browser. See this if you are trying to edit the hosts file on Vista when UAC is enabled.
  4. And that’s pretty much it. Try some ad plagued site like engadget and you should see blank space instead of ads.
  5. Also, don’t forget to update the hosts file as frequently as you can as more and more servers will be popping out every now and then.

For those who wants to know the details and have plenty of time to spend :) , here are the links:

Enjoy!

PS: The hosts file I am using and gave the link above has entries for known malware, trojans and user tracking sites too. It also has entries for ad servers like yahoo, msn and others which can make some sites behave unexpectedly. Please see inline comments on the site.


Juggler : Automatic Wallpaper Changer for Vista

By now you should already have a huge collection of wallpapers. If you don’t, go to previous posts to get direct downloads and a tool to download high quality wallpapers.

Vladstudio Wallpaper Collection

Spectacular Wallpapers from InterfaceLIFT; Tool to download them all;

Now the next thing is to use these wallpapers. Going back to “Personalization” settings every time is really not something I’d prefer. So I, again, coded up a small and handy app which can do this for us.

  • It runs in background and can be controlled from System Tray.
  • It can be configured to
      • start with Windows.
      • look for wallpapers in a specific directory. Best way to use this is to dump all wallpapers matching your resolution in one folder and configure to use that folder.
      • change wallpaper once in half, one or two hrs.
  • You can also manually change wallpaper by using Juggle menu or double clicking the icon.
  • You’ve got the source. So, change it if you want more features. :)

Juggler

And that’s pretty much it. I’m using it on Vista (1920×1200). It will NOT work on XP (or anything other than Vista for that matter) as XP doesn’t support JPEG images as wallpapers and that’s what I am using. I may update it later if I could spare some time. You can get a tool which may work with XP at Coding4Fun. And if you want you can always change the code [link below]. Updated to work with Vista and XP.

Remember, its not fully tested or final app. I just coded and left it when it started doing I wanted. So, no negative testing. :)

Juggler.exe.zip [Independent Executable]

Juggler.source.zip [Source Code, VS 2005]

Links disabled for outdated app. Follow the link below for updated links.

Enjoy!

UPDATE: I’ve updated this app with fixes and more features. Please navigate to the detailed post for description and download.


Spectacular Wallpapers from InterfaceLIFT; Tool to download them all;

Before I say anything else, I have to admit that InterfaceLIFT has the best high resolution wallpapers. There are handful of artists who post their work on this site. Look at the fabulous samples:

 image    image

 image    image

There are thousands of them like these and in all possible resolutions. So the next question is how to get them. I tried the traditional way (read browsing) but it was really difficult to click on each one of them and save manually.

I though it would be really great if I can automate this or some kind of tool that can do this for me. So yesterday night, without wasting anymore time, I decided to code one up. Here is how it looks:

Wallpaper Crawler

Its simple. Choose the resolution you want, choose the location to want to save images to and hit “Search and Download Wallpapers”. You may also want to change the sorting to Ratings or Downloads to get community rated wallpapers first.

And here is how it works: On the website, interfacelift uses javascript to prepare the links for actual images. I checked the HTML source and thought I could exploit that approach.

  • It get the HTML markup for first page.
  • Search for javascript method calls and get the unique identifiers for wallpapers on current page and prepare a list of actual image names.
  • Loop through all images on current page.
  • Download one at a time and save to local disk.
  • Get markup for the the next page.
  • Go to step 2.
  • Keep doing this until user hits Stop or we run out of pages.

And that’s it. Its pretty simple. I ran it on Vista and XP against .Net 2.0. You can download the independent executable and/or source (C#). See update below to download.

WallpaperCrawler.exe.zip [Independent Executable]

WallpaperCrawler.source.zip [Complete Source Code, VS 2005]

I know it can be enhanced or make more robust. But hey I just coded it in couple of hours for the functionality I needed. I haven’t even tested it properly but it did what I was looking for.

Enjoy!

PS 1. If you find any issues with it, put your sleeves up and change the code. And yes, please don’t forget to tell/send me the updates you made so that I can add them for others. :)

PS 2. By no means its a tested and final app. I don’t take any responsibilities for the issues you may run into by using this.

Update: This program is now part of Juggler (another app I created for changing wallpapers). Please navigate to the description page to download the latest version.


Best gets Better : JavaScript Speed Tests

I thought it’d be good idea to share what I meant by saying Opera is the best browser. There are lots of factors which determine the superiority of a browser (and any piece of software for that matter).

There are few benchmarks out already for Opera 9.5 and one of them pointed to the JavaScript speed tests. Try it for yourself. The script which is executing is right there so you can see what exactly is going on.

I ran these tests on Opera, Safari for Windows, Firefox and IE 10 times and put it on a graph.

image

Now you see what I meant, don’t you? Its obvious from the results that Opera kicks IE and Firefox’s butt big time. :) Surprisingly, Safari is pretty close. This is just one test out of HTML rendering, startup , network speeds et all.

Click here to open the detailed browser speed comparisons (Opera 9.5 not included).

Adding to all these goodies, Opera is always fun to use. There are lots of features which you’ll just love. Like the mouse gestures. And starting to download the file while you are still thinking where to save it. And shortcut to paste and go to the URL instead of pasting it and hitting return. And allowing the User Mode view. And really useful zoom. And Feed Reader. And mail client. And Speed Dial. And Widgets. And “Speak” which reads the selected text as humanly as possible. I can keep going for quite sometime but you get the idea. :)

Happy Browsing!


Best gets Better : Opera 9.5 Alpha release

On Tuesday, Opera announced alpha release of opera browser. If you read some initial posts on this blog, you already know how much I love this browser. Even though a lot has been said about browsers (and will be), this is the best browser on the planet.

Everyone, yes I said everyone including MS and Apple, copied features which opera introduced. But you know Howard Aiken once said…

Don’t worry about people stealing an idea. If it’s original, you will have to ram it down their throats.

The best example is the zoom feature in IE which is almost useless if you compare with Opera. They totally copied it but couldn’t make it as smooth as Opera. You zoom and it gets all scrollbars whereas Opera actually resizes the HTML elements to make it useful.

So, go on and follow the link. You’ll never come back to IE unless the site is coded to work only with IE which, by the way, Opera takes care pretty well by allowing to open the current page in any browser on your PC.

Open With command in Opera

Opera Browser 9.5 Alpha release

image

PS: This is still in alpha.


Vladstudio Wallpaper Collection (Updated)

Ever wondered how can you get high quality wallpapers for your desktop resolution? Out of lots of sources in today’s community driven web, there is this Photoshop artist named Vlad Gerasimov who posts his work at his site called Vladstudio.com where low quality wallpapers with signature are free but you need subscription (yes, paid) for quality.

Previews:

     

   

   

I paid (more of support for the artist) for the life time subscription and the good part is that I can share the amazing art work with friends, which by the way is totally OK as per his copyright terms.

…… By visiting Vladstudio.com you are granted a personal license to download and use the files on your personal computer and to share them with your friends and family…..

I also found these direct links for all wallpapers which you can download without subscription. Click on the links (hosted on his server) for your desktop resolution.

800×600 ZIP Pack (150.4 Mb)

1024×768 ZIP Pack (235.8 Mb)

1152×864 ZIP Pack (298.1 Mb)

1280×1024 ZIP Pack (383.1 Mb)

1600×1200 ZIP Pack #1 (248.9 Mb)
1600×1200 ZIP Pack #2 (243.0 Mb)

1280×800 ZIP Pack (265.4 Mb)

1440×900 ZIP Pack #1 (149.2 Mb)
1440×900 ZIP Pack #2 (142.2 Mb)

1680×1050 ZIP Pack #1 (198.1 Mb)
1680×1050 ZIP Pack #2 (187.5 Mb)

1920×1200 ZIP Pack #1 (250.4 Mb)
1920×1200 ZIP Pack #2 (234.5 Mb)

2560×1600 ZIP Pack #1 (328.1 Mb)
2560×1600 ZIP Pack #2 (208.9 Mb)
2560×1600 ZIP Pack #3 (249.9 Mb)

You can download all-in-one zips from Vlad’s site for a lot more resolutions not listed here. Obviously, download links are only available to registered users.

More download links:

  1. InterfaceLIFT. Or use this tool I created if you don’t want to save more than a thousand images one by one.
  2. Hamad’s Vista Wallpaper Pack. Hamad was hired by Microsoft to shoot wallpapers for Windows Vista. He shot handful of ‘em but only a couple made it to the final Vista installation disk. These are only available in 1900×1200.
  3. Mike Swanson’s Wallpaper Collection. Most of these are flowers and leaves. You can feel a little overwhelmed if you are not a nature freak like me. Only available in 1920×1200 and 1600×1200.

Enjoy!


TFS : The Real Picture

I have seen books which can tell you all the theory about TFS. And yes, what will happen if you click on a button on Branching dialog….that too. But if you really want to know what exactly is TFS, don’t just download and forget this guide posted on CodePlex which describes how TFS should be used in real projects. Excerpts from the site:

This guide shows you how to make the most of Team Foundation Server. It starts with the end in mind, but shows you how to incrementally adopt TFS for your organization. It’s a collaborative effort between patterns & practices, Team System team members, and industry experts“ 

Logical Workflow of Team Foundation Server

patterns & practices: Team Development with Visual Studio Team Foundation Server – Home


Windows Live Writer

Well, its being a long time since I posted anything here. One excuse for that can be the incompetent blogger.com UI for posting blogs. Those browser based text editors hardly work and blogger UI went one step further and provides WYSIWYG editor.

That was really an excuse. :) And reason you might be knowing already. Yeah, its the work. I really don’t know where do people use those SDLC jargons in real life they used to fight on in university. I see it all the time that people just try to get things in production no matter how.

Anyway’s, reason for this post is not that. You know how it feels when you see/use a piece of software that looks beautiful, integrates well and actually works. For me, it feels really good. I feel like computers are not meant just to scratch your head on crashes. Ok, the piece of software I am talking about is Windows Live Writer (like you didn’t get it from post title, already).

I came across this here, downloaded, configured with blogger and that’s it. I am posting from it. Hardly 3 mins to get the thing working as its suppose to work. Kudos to the team.

Give it a try. Its really good.

Enjoy!


Follow

Get every new post delivered to your Inbox.