A great, free and easy to use application to add network folders (e.g. from a NAS-system) to Windows 7 / 8-Libraries for owners of a non Professional Edition:

Zorn Software » Blog Archive » Win Library Tool [revised for Windows 8] – Simplicity is the Essence of Good Design.

What can I say – finally it works:

 

Win Library Tool

Win Library Tool

Nice free (for non business usage) program to capture screenshots and instantly add marks, shapes, comments and more to the screenshots:

PicPick :: All-in-one Design Tool, Screen Capture, Image editor, Color Picker, Pixel Ruler and More.

Regards,

Daniel

Good search page to find icons by tags in different formats and sizes:

Symbol-Suchmaschine – Lade 410.185 kostenlose Symbole, PNG-Symbole, Web-Symbole herunter.

Regards,

Daniel

Git+Hg Client – SmartGit/Hg   February 24th, 2013

Git+Hg Client – SmartGit/Hg.

Seems like a promising client for git. It’s free for personal use. I’m planing to give it a try. Will switch from from svn to git on my Synology.

Regards,

Daniel

Argh … I’m currently using Logitech Gaming Software for my G930 Headphone, the G15 Keyboard and the G500 Mouse. The interface looks nice but it seams, they forgot, at least under Windows 7 64bit Home Premium, to make the Aero Flip 3D-feature assignable to one of the mouse buttons. Thanks to google I found a workaround in the Logitech Forum: http://forums.logitech.com/t5/G-series-Gaming-Mice/macro-for-Aero-3D-flip/td-p/571314. The trick is to chose somthing like ‘Execute program’ or similar (have the german version) and assign the following command line:

C:\Windows\System32\rundll32.exe DwmApi #105

What can I say, it works 🙂

Regards,

Daniel

Motivation:

As you can see from my earlier posts I got over the last couple of month a little bit in contact with Perl as a script language being used as a substitution for the old Dos-/Windows batch processor for some general script based tasks and in special for creating an automatic and full customizable build system for a larger Visual C++ project with a bunch of targets and some resulting distribution packages (installers and zip-archives).

For practicing purposes I invested a bit time in investigating about the OOP-features of Perl. When you read about it in the internet a lot of people share the opinion that Perl’s default OOP-support works well, but it requires a lot of tedious work for the programmer to set up a class. They recommend you to give Moose a try, which is a relatively new module of Perl. It promises to make OOP under Perl easy and is already deployed in production by some real companies.

To learn Moose by doing I decided to program a little script which mimics in a smaller feature subset the possibilities of the UNIX console program “find” as I know it from my earlier days. It should give me under Windows (and of course under other OSes where Perl is available too) the possibility to do a recursive file search using some include- and exclude-filters and let on the result set happen some actions like “print”, “put to an archive” or “clean the matching” files.

ffind.pl:

The resulting script has the name ffind.pl (file find).  Here are some examples for using it on the Windows command line:

1
2
3
4
5
6
7
8
9
10
11
REM Match in users temp dir all items whose name contains 
REM substring ‘pic’ except the gifs and jpgs:
perl ffind.pl C:\Users\daniel\Temp -ni "*pic*" -ne "*.gif,*.png"

REM Create a zip-archive of all text files w. automatic current 
REM timestamp name in dir ‘c:\users\daniel\backups’:
perl ffind.pl ./ -ni “*.txt” –zip “c:\users\daniel\backups”

REM Delete / clean all object files. Don’t display file deletion
REM warning / confirmation:
perl ffind.pl ./ -ni “*.o,*.obj” -fclean

View / download the files and the final conclusion:

I wrote a little blog post report about the implementation of ffind.pl as a pdf. The addressed topics can best be described by the following tags:

  • Perl
  • OOP
  • Moose
  • Software Tests
  • Test::More
  • Command line Parsing
  • Options
  • Getopt::Long

You can view/download it here plus the script (of course) and a little directory tree of empty files and folders for testing the script:

My final conclusion about Moose & Perl:

Finally it’s a nice addition to Perl to have the possibility to leverage now the powers of OOP more easily once you have managed to overcome the first obstacles of Moose. In detail if you have made a mistake it’s not easy to get known from the error message the real cause of the error. But so far I guess that’s more a general problem of Perl, not Moose 😉 So if you have the choice you might want to give Python a try as it is object oriented by design and a lot easier to learn without being less powerful than Perl.