Measure execution time of command in windows command line

@echo off

set starttime=%TIME%
set startcsec=%STARTTIME:~9,2%
set startsecs=%STARTTIME:~6,2%
set startmins=%STARTTIME:~3,2%
set starthour=%STARTTIME:~0,2%
set /a starttime=(%starthour%*60*60*100)+(%startmins%*60*100)+(%startsecs%*100)+(%startcsec%)

:TimeThis
ping localhost 

set endtime=%time%
set endcsec=%endTIME:~9,2%
set endsecs=%endTIME:~6,2%
set endmins=%endTIME:~3,2%
set endhour=%endTIME:~0,2%
if %endhour% LSS %starthour% set /a endhour+=24
set /a endtime=(%endhour%*60*60*100)+(%endmins%*60*100)+(%endsecs%*100)+(%endcsec%)

set /a timetaken= ( %endtime% - %starttime% )
set /a timetakens= %timetaken% / 100
set timetaken=%timetakens%.%timetaken:~-2%

echo.
echo Took: %timetaken% sec.

Measure execution time of command in windows command line

@echo off
set start=%time%
:: run your command here...

set end=%time%
set options="tokens=1-4 delims=:."
for /f %options% %%a in ("%start%") do set start_h=%%a&set /a start_m=100%%b %% 100&set /a start_s=100%%c %% 100&set /a start_ms=100%%d %% 100
for /f %options% %%a in ("%end%") do set end_h=%%a&set /a end_m=100%%b %% 100&set /a end_s=100%%c %% 100&set /a end_ms=100%%d %% 100

set /a hours=%end_h%-%start_h%
set /a mins=%end_m%-%start_m%
set /a secs=%end_s%-%start_s%
set /a ms=%end_ms%-%start_ms%
if %hours% lss 0 set /a hours = 24%hours%
if %mins% lss 0 set /a hours = %hours% - 1 & set /a mins = 60%mins%
if %secs% lss 0 set /a mins = %mins% - 1 & set /a secs = 60%secs%
if %ms% lss 0 set /a secs = %secs% - 1 & set /a ms = 100%ms%
if 1%ms% lss 100 set ms=0%ms%

:: mission accomplished
echo Command took %hours%:%mins%:%secs%.%ms%

Batch file for randomly renames every file in a folder

@ECHO OFF
ECHO Random Names
ECHO.
ECHO.

REM Randomly renames every file in a directory.

SETLOCAL EnableExtensions EnableDelayedExpansion

REM 0 = Rename the file randomly.
REM 1 = Prepend the existing file name with randomly generated string.
SET PrependOnly=0

REM 1 = Undo changes according to the translation file.
REM This will only work if the file "__Translation.txt" is in the same folder.
REM If you delete the translaction file, you will not be able to undo the changes!
SET Undo=0


REM --------------------------------------------------------------------------
REM Do not modify anything below this line unless you know what you are doing.
REM --------------------------------------------------------------------------

SET TranslationFile=__Translation.txt

IF NOT {%Undo%}=={1} (
REM Rename files
ECHO You are about to randomly rename every file in the following folder:
ECHO %~dp0
ECHO.
ECHO A file named %TranslationFile% will be created which allows you to undo this.
ECHO Warning: If %TranslationFile% is lost/deleted, this action cannot be undone.
ECHO Type "OK" to continue.
SET /P Confirm=
IF /I NOT {!Confirm!}=={OK} (
ECHO.
ECHO Aborting.
GOTO :EOF
)

ECHO Original Name/Random Name > %TranslationFile%
ECHO ------------------------- >> %TranslationFile%

FOR /F "tokens=*" %%A IN ('DIR /A:-D /B') DO (
IF NOT %%A==%~nx0 (
IF NOT %%A==%TranslationFile% (
SET Use=%%~xA
IF {%PrependOnly%}=={1} SET Use=_%%A

SET NewName=!RANDOM!-!RANDOM!-!RANDOM!!Use!
ECHO %%A/!NewName!>> %TranslationFile%

RENAME "%%A" "!NewName!"
)
)
)
) ELSE (
ECHO Undo mode.
IF NOT EXIST %TranslationFile% (
ECHO Missing translation file: %TranslationFile%
PAUSE
GOTO :EOF
)
FOR /F "skip=2 tokens=1,2 delims=/" %%A IN (%TranslationFile%) DO RENAME "%%B" "%%A"
DEL /F /Q %TranslationFile%
)

ગુજરાતના ક્યા ક્યા શહેરની કઇ કઇ વસ્તુ વખણાય છે?

દરેક ગુજરાતીના મોઢે તમે પણ આ ડાયલોગ સાંભળ્યા હશે. હા, વાત થઈ રહી છે ગુજરાતના શહેરોની એવી વસ્તુઓની કે જેણે તેના સ્વાદની જેમ બધે સોડમ પ્રસરાવી છે.

તો આવો નજર કરીએ ગુજરાતના ક્યા શહેરમાં શું વખણાય છે તેની યાદી પર....

વાચકો તરફથી મળેલા ફિડબેકના આધારે અમે અહીં રાજ્યના શહેરોના વિસ્તાર અને બ્રાન્ડ નેમ પ્રમાણે કઇ વસ્તુ વખણાય છે તેની યાદી બનાવી છે. તમે અમદાવાદ કે રાજ્યના અન્ય શહેરોની આવી યાદી મોકલાવી શકો છો, જેને અમે નામ સાથે પ્રસિધ્ધ કરીશું.

અમદાવાદ: લકીના મસ્કાબન, સાબરમતી જેલ અને રાયપુરના ભજિયા, છત્રભૂજની સેન્ડવીચ, જશુબેનના પિઝા, વિજય અને જયભવાનીના વડાપાંવ, કર્ણાવતીની દાબેલી, મણીનગરના માસીની પાણીપૂરી, ગીતાની સમોસા-કચોરી, શંભૂની કોફી, દાસના ખમણ-સેવખમણી, લક્ષ્મીના ગાંઠિયા, આસ્ટોડિયાની લખનૌની અડદની જલેબી, જવેરવાડની પાણીપૂરી, મેમનગર ફાયર સ્ટેશન પાસેની ચોકલેટ-ચીઝ સેન્ડવિચ, વિદ્યાપીઠ પાસેના થેપલા, ગુજરાતના દાળવડા, ફરકીના ફાલૂદા, પાલડીની નરસિંહ ભગત હોસ્ટેલ પાસેની પાપડી, વાડજના સોહરાબજી કમ્પાઉન્ડના દાલ-પકવાન, યુનિવર્સિટીના ઢોસા, બાપુનગરના ગોંડલના ગાઠિયા, દિનેશના ભજિયા, સીમા હોલ પાસે ઇન્દોરની ચાટ, જેઠાણી-દેરાણીનો આઇસ્ક્રીમ, રાજસ્થાન આઇસ્ક્રીમ અને અસારવાનો સંચાનો આઇસ્ક્રીમ, શંકરનો આઇસ્ક્રીમ, મણિનગરના ટામેટાના ભજિયા, વીએસ હોસ્પિટલ પાસે નાગરની ચોરાફળી, વૈષ્ણોદૈવી પાસેના દાલફ્રાઈ અને રાઈસ, કાંકરિયાની કાળી ટોપી લંબી મૂછની ખારેક, મરચી પોળનું ચવાણું, દોસીવાડા પોળની હિંમતસિંહ ઓટલાવાળા ખરખરિયા, જુના શેર-બજારનું ચવાણું, ઝવેરીવાડના ચોકલેટ પિઝા, સેટેલાઈટમાં શક્તિનો ભાજી પાંવ, સી.જી. રોડ પર આર.કે.નો ભાજી પાંવ, હાટકેશ્વરમાં કે.સી.નો ભાજી પાંવ, પાંચ કૂવાની ફૂલવડી, લક્ષ્મી બેકરીની પેટિસ, શ્રી રામના ખમણ, ઓનેસ્ટના ભાજી-પાંવ, મોતી બેકરીની નાનખટાઇ, ચંદ્ર વિલાસના ફાફડા જલેબી, સૌરાષ્ટ્રના ફાફડા,ઋતુરાજના મસ્કાબન-ચા, ચાંગોદરના ભઠ્ઠીના ભજિયા, સરદાર પટેલ સ્ટેડિયમની ક્રિષ્ના લસ્સી, ઢબગરવાડની કચોરી, અલંકારના સમોસા, મિરઝાપુરમાં ફેમસના કબાબ, રાયપુરના શ્રી રામના ખમણ, એનઆઇડી પાસે માસીની ઓમ્લેટ, બહેમરામપુરાના વિજયના દાલવડા, ખોખરાના ઇડલી ચાર રસ્તાની ઇડલી, નરોડાના ગેલેક્સી થિયેટરના ખોડિયારના ભજિયા, હરિન પાઠકના બંગલાની પાસે લિજ્જતના ખમણ, બાપુનગરમાં મુક્તિધામ એસ્ટેટના મરચાની ચિપ્સના ભજિયા અને કુંભાણિયા (મરચાની મમરીના ભજિયા), લા ગજ્જરની સામે દેવાર્શના પરોઠા, લકીની બાજુમાં શશીનુ ચવાણું, વસ્ત્રાપુર હનુમાન દાદા પાસેના પરોઠા, ઝવેરીવાડના જૈન ફરસાણના ભાખરવડી અને કેળાવડા, જનતાનો કોકો, ઝવેરીવાડની દાળિયાની ચટણી, બાલા હનુમાન ગાંધી રોડના રગડા-સમાસા, રામ વિજયના ફાફડા-જલેબી, ભૂતની આંબલીના ફાંફડા, ઇન્દુબેન ખાખરાવાડાના ચણાચોર ખાખરા અને ઢોસાના ખાખરા, એલઆઈસી બિલ્ડિંગની સામે પથ્થર કૂવાના મરચા અને કેળાની વેફર્સ, ઇન્કમ ટેક્સ પર પંડિતની સેન્ડવીચ, રેવડી બજારનો રબડી આઇસ્ક્રીમ, અંકુરના આણંદ દાલવડા, ઝવેરીવાડના મારવાડીના પાપડના ગુલ્લા, મેન્ટલ હોસ્પિટલ સામેના છોલે ભટુરે, કુબેરનગરના પકોડા, મખ્ખન મગ-દાળ, કેવલની કચોરી, મસ્તાનાની ગોલાડીશ

રાજકોટ : મયૂર ભજિયા, મનહરના સમોસા-ભજિયા, ઢેબર ચોકના આઇસ્ક્રીમના ભજિયા, જય અંબે, ખેતલા આપા અને મોમાઈની ચા, રામ ઔર શ્યામના ગોલા, સોરઠિયાવાડી સર્કલની હંગામાં કૂલ્ફી, ભક્તિનગર સર્કલનો સોના-રૂપાનો આઇસ્ક્રીમ, કરણપરાના બ્રેડ કટકા, એરપોર્ટ ફાટક પાસેના ઢોસા, જોકરના ગાંઠિયા, સુર્યકાંતના થેપલા-ચા, જય સિયારામના પેંડા, રસિકભાઈનો ચેવડો, જલારામની ચિકી, ગોરધનભાઈનો ચેવડો, આઝાદના ગોલા, બાલાજીની સેન્ડવીચ, અનામના ઘુઘરા, ઇશ્વરના ઘુઘરા, રાજુના ભાજી પાંવ, મગનલાલનો આઇસ્ક્રીમ, સોનાલીના ભાજી પાંવ, સાધનાની ભેળ, નઝમીનું સરબત, રાજમંદિરની લસ્સી, ભગતના પેંડા, શ્રી રામની ચટણી, મીલપરાનું અમદાવાદી ખમણ, પટેલના ભાજી પાંવ, સંતકબીર રોડનું ચાપડી-ઉંધીયુ, રઘુવંશીના વડાપાંવ, બજરંગની સોડા, ન્યૂ સર્વશ્વર ચોકના બ્રેડ કટકા,કાલાવડ રોડ પર ફાયર બ્રિગેડની સામેના ઢોસા, નિર્મલા કોન્વેટ પાસેના ઢોસા, કોટેચા ચોક પાસેની કચોરી-સમોચા, સંતકબીર રોડની રાંદલના ભાજી પાંવ, મેટોડા જીઆઈડીસીમાં બાલાજીના ભજિયા,ઠક્કરના ખમણ

સુરત :રમેશનો સાલમપાક,  કિશોરનો આઇસ્ક્રીમ, જાનીનો લોચો, લાલ દરવાજાનો ગોપાલનો લોચો, ગાંડાકાકાના ફાફડા, વરાછા રોડ પર વૈશાલીના વડાપાંવ,અઠવા લાઈનના કાકીના ભાજી પાંવ, ચોપાટી પાસે મહેશનો પુલાવ, વેડ દરવાજા પાસે પટેલની તવા સબ્જી, અંબાજી રોડ પર સુરતીના ખમણ,લાલગેટ પાસે મજદાની નાનખટ્ટાઈ, ભાગર વિસ્તારમાં રામજી દામોદરનું ભુસ્સુ,  ખાંડવાળાની શેરીના સુરતી સરસિયા ખાજા, લીમડા ચોકમાં ચેવલીના ભજિયા, ઝાંપાબજાર પાસે આદર્શની ચા, દાળિયા શેરીની નરેશની ભેળ, બેગમપુરામાં મઢીની ખમણી,સલાબતપુરામાં સેન્ડીકેટના સમોસા, મોટા વરાછામાં કુંભણિયા ભજીયા, ટેક્સટાઇલ માર્કેલ પાસે પહેલવાનાના ચોલે ભટુરે, ભાગર વિસ્તારમાં મોટી હરજીની જલેબી, ઉધના મગદલ્લાનો હજુરીનો સોસિયો,વરાછા રોડ પરના મયૂરના ભજિયા, ગજેરા સર્કલ પાસે જલારામનો લોચો, દિલીપના વડાપાંવ, રાજાની લસ્સી, ગોપાલનો લોચો, સબજેલના ભજીયા, વી એસના મસાલા ડોસા,

વડોદરા :દુલીરામના પેંડા, મહાકાળીનું સેવઉસલ, પારસનું પાન, ભાઇભાઇની દાબૅલી, શ્રીજીના વડાપાંવ, એમજી રોડ પર લાલાકાકાના ભજિયા, મંગળબજારમાં પ્યારેલાલની કચોરી, ન્યાયમંદિર પાસે સત્યનારાણ અને રાજસ્થાની આઇસ્ક્રીમ, રાજમહેલ રોડ પર રાજુના ખમણ, અલ્કાપૂરીમાં બોમ્બે સેન્ડવીચ, કોઠી ચાર રસ્તા પાસે મનમોહનના સમોસા, જગદિશનો ચેવડો, ટેસ્ટીના વડાપાંવ, ફતેહરાજના પૌવા, વિનાયકનો પુલાવ, લાલાકાકાના ભજિયા,  નાળિયેર પાણીની સિંગ, ખાઉધરા ગલી પાસે ડાયાભાઈના મૈસૂર મસાલા ઢોસા, દયાલની રગડા પેટીસ,પ્યારેલાલની કચોરી,જગદંબાનો ચેવડો, લારીલપ્પાની લસ્સી, ગાયત્રીના નાયલોન ખમણ, બાબુભાઈના ખમણ, કાકાનું ભુસુ, પદમાવતી શોપીંગ સેન્ટર પાસે ગુરુદેવના પેપર સમોસા,

જામનગર :એચ.જે.વ્યાસનો શીખંડ, વલ્લભભાઈના પેંડા, જનતા ફાટકના વણેલા ગાંઠિયા, જગદિશનો ફાલુદો, ગીતાનો આઇસ્ક્રીમ, જવાહરના પાન, દિલિપના ઘુઘરા, ઉમિયાના ભજિયા,  તળાવની પાળે લખુભાઈનો રગડો, ગીજુભાઈની ભેળપૂરી, બજરંગનું પાન, કિશોરનો રસ, જૈન વિજયની ડ્રાયફ્રુટ કચોરી, ચાંદીબજાર રાજનો ફાલુદો, ગીગાભાઈની ભેળ અને ગાંઠીયા, હવાઈચોકમાં બાબુ તથા માસ્તરના પાન, બેડીગેટ લક્ષ્મીના ગાંઠિયા અને પુરીશાક, પાગાની સોડા, બેડીગેટ મિલનની પાઉભાજી, પટેલ કોલોની મનમોજીના ગોલા, ગોકુલનગર આશાપુરાની ચા, જ્યોતિ અને શિવમની ચા, દિગ્વિજય પ્લોટ રામેશ્વરની ભેલ, એસ.ટી. ડેપો પ્રભા મહારાજના ગાંઠિયા, પવનચક્કી રજવાડીના ભજિયા,બેડીગેટ મયુરીના ભજીયા, તળાવની પાળે લખુભાઈનો રગડો

ભાવનગર :ભગવતીનું સેવ-ઉસળ, દાસના પેંડા અને મરીવાળા ગાંઠિયા, ચારભાઈનું જ્યૂસ, ખત્રીના નાયલોન ગાંઠિયા, ગાંધીસ્મૃતિ ટાવર પાસે પેસ્ટ્રીપાન અને કચરિયું, અમૃતપૂરીના પેંડા, ડોન સર્કલ પાસે કિશનની સોડા, અનુપમની સોડા, હરિભાઈના ખમણ, જીવનભાઇના ગાંઠિયા, દવે દાદાનું ઉંધીયું, ઘોઘાગેટના દાલ પકવાન, હિમાલયનો આઇસ્ક્રીમ, દિલબહારનો આઇસ્ક્રીમ, પાલવની પાંવ ભાજી હાઇકોર્ટ રોડ પરના ચણામણ અને ભૂંગળા બટેટા, કાળુની સેન્ડવીચ, જીતુભાઈની દાલપૂરી અને રામ ઔર શ્યામના ગોલા

આણંદ :રેલવે સ્ટેશનની દાબેલી, પાંડુના દાલ વડા, યોગેશના ખમણ, સાસુજીનો હાંડવો,એ. વી. રોડ પર નાયલોનની પાઉભાજી, સુખડિયાનું ચવાણું, જનતા ચોકડી મસ્તાનાની દાબેલી, બોમ્બેના વડાપાંવ, વી.વી.નગરના મહારાજના સમોસા , અંકિતના બર્ગર, વી.વી નગરમાં સહજાનંદના સમોસા , યોગેશના ખમણ, આત્માનંદના ઢોસા, સત્યનારાયણનો કોકો, ગાયત્રીના પાણી પોચાં ખમણ, જનતા ચોકડીની ખારી શિંગ, જનતા ચોકડીની કસ્તુરી, મઝદાના પફ, ઠકકરની સેવખમણી

પાલનપુર:માધવીના પેંડા અને બદામ શેક, ઢાળવાસની કચોરી, શક્તિનું ખમણ અને પાતરા, રાજુનો ગોળો, મણિલાલની પાણીપુરી, ભોગીલાલના સમોસા, જય અંબેની જલેબી અને લસ્સી, ભોલેનાથની પાઉભાજી, રાજુભાઇના ઘુઘરા, સિટીલાઇટના કઢી-સમોસા, મુકેશની ચોળાફળી

ગાંધીનગર :  મયુરના ભજિયા , ગાંઠીયારથના ગાંઠિયા, મહાલક્ષ્‍મીના ખમણ, મહારાજના દાળવડા, ભાભીના ભજિયા, બટુકના ગોટા, મોરલીના ઢોંસા, પુજાના ઢોકળા, સેંધાના ગોટા, અક્ષરધામની ખીચડી, લક્ષ્મી બેકરીના પફ અને પેટિસ અને નાનખટ્ટાઈ, વૈષ્ણોદેવી પાસે શિવશક્તિની દાલ-બાટી

સુરેન્દ્રનગર:  ભાભીના ભજીયા, રાજેશના સમોસા, જગદંબના પરોઠા, ઉકાનું પૂરી-શાક, સિકંદરની સિંગ,જલારામના વાળા-પાંવ, નોવેલ્ટીના પરોઠા -શાક, પેરામાઉન્ટનો આઇસ્ક્રીમ, ચેતનાની દાબેલી, દાળમિલમાં સાગરની ખસતા કચોરી, એસ્ટ્રોનનું પાન, કિસ્મતની સોડા, સૂર્યાના ભાજી પાંવ, ગોકુલનું સીઝલર, ગોપાલના મસાલા પાંવ

અમરેલી :ચક્કાભાઈની ચા, જયહિન્દના ગોટા, ટાવર પાસે ગોપાલની જામેલ લસ્સી, હિરાભાઈના દૂધના પેંડા અને નાના બસસ્ટેન્ડની ચા, ભગતનું ઉંધીયુ, મહારાજના ભાજીપાંવ, શિતલનુ કોલ્ડપાન

જુનાગઢ :મોર્ડનની લસ્સી, બાપુના ભજિયા, સાગરના બટર પફ, જનતાની ભેળ, ચામુંડાની મેંગો લસ્સી, હરિઓમના થાબડી-પેંડા, કાળવા ચોકની બાસુંદી, મહારાજના ભજિયા

ભૂજ :બાસૂદી ગોળા, રજવાડી ગોળા, આઇસ્ક્રીમ ગોળા, વાણિયાવાડ ખાવડાના સાટા, પકવાન અને ગુલાબપાક, ગોવિંદજીના પેંડા,મધુની ભેળ, ધીરૂભાઈની રોટી, શંકરના વડાપાંવ

મહેસાણા:  સહયોગના પેંડા, મુરલીના વડા પાંવ, પટેલની ખમણી, સ્ટેશનની ચા, રામપુરા ચોકડીની દાબેલી, ક્રિષ્નાની દાબેલી

બારડોલી :જલારામના પાંતરા, જલારામના ખમણ, જલારામની ખીચડી, મહારાણાના દાણા-ચણા, ભરકાદેવીનું આઈસ્ક્રીમ,જેઠાની પાંવભાજી, દાસકાકાની મિઠાઈ, તુલસીની ખિચડી

પાટણ :  નવરંગનો ગોળો, ભગવતીનું ચવાણું

વલસાડ :રાજારાણીના વડાપાંવ, બનારસની ભેળપૂરી, જલારામાના ખમણ, દ્વારકાના ભાજી પાંવ, ડૂગરીનું ઉબાડીયુ

વેરાવળ :કાકાની સેન્ડવીચ, રાજેન્દ્રની સોડા

નવસારી :  વિકાસના સમોસા, મામાની પેટીસ, ચીખલીના જલારામના ખમણ

ઊંઝા :કાકાના ગોટા, એ-વનના સમોસા, સુરતીના પેંડા, ઉમિયાના ભાજી-પાંવ

જેતપુર :વજુગીરીના ભજિયા, દિપકની દાબેલી, નાથબાપાના લસણિયા સેવ મમરા, ભગતના પેંડા

દાહોદા :બાદશાહ કૂલ્ફી

ગોધરાઃ પેટ્રોલ પંપના ભજિયા, ગાયત્રીની લસ્સી, શંકરની ભાજી-પાવ, ગોપાલનો ગોટો

બોટાદ :જેરામભાઈનો ચેવડો

મોરબી‍ :પકાના ભૂંગરા બટાટા, કાનાની દાબેલી, ભારતની પાણી પુરી, મયુરના ભજિયા,ચક્કાના બ્રેડ બટાટા, જૈનના ખમણ, કડક ભગતના રોટલા, ભવાનીના ગોલા

ધારી:કનૈયા ડેરીનો શીખંડ

મહુવા:વરિયાળીનું સરબત

નડિયાદ:સિંધી બજારનું ગળિયું ચવાણું, વસોગામના પત્તરવેલિયા

Why C# Is Not My Favorite Programming Language

1. Default Object Lifetime Is Non-Deterministic

In most object-oriented languages, there is a very specific time when an object constructor is called (namely, when an object is instantiated) and when its destructor is called (namely, when it falls out of scope).
In C#, they have taken the "garbage collection" paradigm one step too far. Not only does memory management rely on it, but even the object destructor is called "somewhen", at an unpredictable time! In a previous version of this document I wrote "somewhen after the object falls out of scope", but it turns out to be even worse, so I'll devote a separate section to the gruesome truth below.
In any case, this means that handy constructs such as an AutoLock can no longer work (example in C++):
class AutoLock
{
public:
    AutoLock(Mutex& m): m_mutex(m)  { m_mutex.Lock(); }
    ~AutoLock()                     { m_mutex.Unlock(); }
private:
    Mutex&   m_mutex;
};
In a typical Microsoft-way of thinking, they added a "special case" for this particular example by means of the lock keyword (which, incidentally, would be trivial to simulate in C++ should you like the keyword-taste of it). However, other "automatic" resource management using object lifetime (for example, for handles, GDI object, etc.) still won't work.
To resolve this, objects can implement the IDisposable interface, which has a Dispose() method. When object lifetime is important to you, you should put the relevant cleanup code in the Dispose() implementation and remember to call Dispose() on the object yourself. It is good practise to have the destructor call Dispose() on the object too, but as Professional C#, 2nd Edition puts it: "The destructor is only there as a backup mechanism in case some badly behaved client doesn't call Dispose()" (emphasis mine). You see, only badly behaved clients would forget to clean up after themselves, so I guess only badly behaved clients would need a garbage collector in the first place, right?
The proposed "better solutions" for this are the using keyword, like so:
using (AutoLock theLock = new AutoLock(m_lock))
{
    // your protected code here
}
or using the finally clause (which is often recommended over the using statement), like so:
AutoLock theLock = new AutoLock(m_lock);
try
{
    // your protected code here
}
finally
{
    theLock.Dispose();
}
In the former case, it gets a nuisance if I have more than one object which I'd like to have a deterministic life time for, and in the latter case (which, incidentally, is very similar to the code that gets emitted by the compiler when you use the lock keyword) I still need to remember typing Dispose() by hand.
And it gets worse! Even program termination doesn't trigger proper cleanup. You can verify this with the following program:
using System;
using System.IO;
 
class TestClass
{
    static void Main(string[] args)
    {
        StreamWriter sw = File.CreateText("C:\\foo.txt");
        sw.WriteLine("Hello, World?");
        // Note: We "forget" sw.Close().
        // Incidentally, StreamWriter.Dispose(bool) is protected, 
// so we can't call it directly.
    }
}
The foo.txt file will be created, but it will be empty. Note that even C specifies that all unflushed data is written out, and files will be closed, at program termination. And even if I did remember to call Close() myself (I wouldn't want to be a badly behaved client, now would I?), this wouldn't be exception-safe. I am supposed to remember to use using, or litter my code with finally blocks.

2. Object Lifetime is Not Determined by Scope

I wrote above that I initially thought that objects are destroyed "somewhen after they go out of scope", but in reality it seems to be far, far worse. As it turns out, the JIT compiler can do "lookahead optimization", and may mark any object for collection after what it considers it's "last use", ignoring scope!
I have had a colleague ask me about the following code:
{
    ReadAccessor access(image);
    IntPtr p = access.GetPtr();
    // lengthy piece of code here doing stuff with the pixels from the image
}
A ReadAccessor is an object which provides access to the pixel data in an image, which is stored in a memory mapped file for performance reasons. When a ReadAccessor is constructed, it maps in the memory, after which you can call GetPtr() to get at the actual data. Once it goes out of scope, it unmaps the memory again. So, the "validity" of the data is guaranteed for the lifetime of the ReadAccessor.
Incidentally, there is also a WriteAccessor, which makes sure that there be only a single writer at any given time. Of course, people using this code in C# quickly found out that they had to dispose of these WriteAccessors manually, because otherwise they'd get the error that this WriteAccessor would still be sitting in the garbage bin while they were trying to acquire a new one. But that's the problem mentioned in the item above. This one is far, far worse.
The colleague told me that his code crashed somewhere in the pixel-processing code.
It took me a while to figure out what was happening: The JIT optimizer looked ahead a little bit, decided that access wasn't being used after the GetPtr() call, and marked it for collection. Later on in the code, in the same scope, mind you, the GC apparently decided it was a good time to destroy the ReadAccessor, which unmapped the memory still being used by the code.
I still find this hard to believe (even C# can't be this stupid), but the crash went away by modifying the code like so:
{
    ReadAccessor access(image);
    IntPtr p = access.GetPtr();
    // lengthy piece of code here doing stuff with the pixels from the image
    System.GC.KeepAlive(access);
}
This particular item is so mind-boggling that I hope some dear reader can tell me it's just a bad dream and scope is, in fact, honored by the GC.

3. Every Function Must Be A Method

C# imposes an object-oriented paradigm and enforces it by prohibiting the definition of stand-alone functions: every function must be a member of a class.
If you take object-orientation to the extreme, you would not say
float b = sin(a);
but rather
float b = a.sin();
This is clearly unpractical. (Ignore the question of how you would take the sine of a number instead of a variable.)
C# (and Java, for that matter) still try to go about half-way there by making the sine function a member of the Math class (or namespace — I can never tell them apart in C#):
float b = Math.sin(a);
If I want to add my own mathematical functions, I either have to extend the Math class (which I can't, because it's sealed) or put up with the strange distinction that I need to write
float h = Math.sqrt(a*a + b*b);
but
float h = MyMath.hypot(a, b);
It gets even more scary if you look at the OracleNumber class, which also has a sin method. Luckily, it's static, and you can't call static member functions on instances.
This is related to the following item, but that is bad enough that I think it warrants its own item:

4. Containers Have Algorithms As Methods

The popular ArrayList container (an auto-resizing container, comparable to C++'s vector template) has a Sort() method. And a Reverse() method. But not a Randomize() method. Why should some algorithms be member functions, but not others? The answer is that no algorithms should be member functions. What if I wanted to use a different sorting algorithm than the one the original implementers of ArrayList had in mind?
Note that an ArrayList sorts itself, while Array.Sort(...) is a static member function of the Array class.
If I decide, late in a project, at the performance-tuning stage perhaps, that I could better use an ArrayList for some particular collection than the Array I used up to now, I will likely have to modify my code in multiple places.
Note that this is not a shortcoming of the language, but it is partly a consequence of item number 2, above. Also note that C# shares this problem with some other languages – even C++ has a few quirks here (the string class comes to mind).

5. Default Comparison Behavior Is Dangerous

Given a class Vector, which doesn't overload the comparison operator==, I can still write
Vector a, b;
if (a == b)
{
        ...
}
In C++, the compiler will have the courtesy of telling me there is no operator== defined for Vectors; in C#, this will simply compile, but it means "compare the references a and b", i.e. it is true when a and b are the same Vector, not when their value is equal. Also, because of the following item, you can't add such an operator yourself without altering the Vector class:

6. Operator Overloading Is Severely Broken

In C++, given a class Foo, you can define an operator for adding two Foos without altering the Foo class itself:
class Foo {};
 
Foo operator+(const Foo& lhs, const Foo& rhs)
{
    return Foo(whatever it means to add two Foos);
}
In C#, this is not possible without altering the Foo class itself. Because of the limitation mentioned in item number 2, above, you cannot make this operator a "free-standing" one. Of course, adding this operator has nothing to do with the interface to the Foo class, so you'd probably try something like this:
public class FooOps
{
    public static Foo operator+(Foo lhs, Foo rhs)
    {
        return new Foo(whatever it means to add two Foos);
    }
}
but this doesn't work. You'll get the error "One of the parameters of a binary operator must be the containing type". In other words, if someone hands you, say, a Vector class without overloaded operators, you'll have to modify the class itself, also introducing a dependency of your class on the module which happens to implement these operators.
But wait, there's more.
Note that when you overload the operator==, you also have to overload operator!= – but we'll forgive the compiler for not being able to auto-generate it. It will do a similar "helpful" trick with arithmetic and bitwise assignment operators – when it most definitely shouldn't. You cannot overload the arithmetic and bitwise assignment operators +=, -=, etc. Instead, they are evaluated in terms of other operators that can be overloaded. This is exactly the wrong way around; most C++ programmers implement an operator+ in terms of operator+=.
Suppose you have a class Image, representing an image. Also, suppose you have some kind of image processing library, offering functionality to add two images together. For performance reasons, this library will likely have separate functions for adding one image in-place, overwriting the old contents, and for returning a new image containing the result of the addition:
public class ImageProcessing
{
    public static Image Add(Image lhs, Image rhs);
    public static void AddInPlace(Image lhs, Image rhs);
}
You may decide that it's a nice service to clients of your Image class to offer operators for this, so they can write code like
Image a, b, c;
c = a + b;   // really c = ImageProcessing.Add(a, b)
a += b;      // really ImageProcessing.AddInPlace(a, b)
(Of course, you'll have to send them a new Image class, because you have to modify it for this; in addition, your Image class can now not be used without the ImageProcessing class). You would think you'd override operator+ for ImageProcessing.Add() and operator+= for ImageProcessing.AddInPlace(), but you can't. Instead, when your client types a += b, a whole temporary Image will have to be constructed, holding the result of the addition, after which the left operand is replaced with the result. Good bye performance!
Update: In the 3.0 version of the language, a new feature called "extension methods" has appeared. It is now possible to add methods to classes without modifying the original class file, so you could make img.AddInPlace(otherImage) work. However, extension methods don't work together with operator overloading.

7. Events Without Subscribers Raise Exceptions

If a tree falls down in the woods and there is nobody there to hear it, does it still make a sound? C# has a very interesting view on this popular Philosophy 101 question.
In C#, there is a concept called delegates. A multicast delegate is a set of methods to be called successively when the delegate is called. When the set of methods is empty, trying to call the delegate raises an exception.
However, events are implemented in terms of multicast delegates, too. You declare a delegate and an event like so:
public delegate void TreeListener();
 
class Tree
{
    public event TreeListener Fell;
        
    public void Fall()
    {
        // Fall down, and make some noise.  To be discussed.
    }
}
The idea is that clients interested in hearing trees fall can subscribe themselves to the event using a very fancy syntax:
class Client
{
    public Client(Tree tree)
    {
        tree.Fell += new TreeListener(TreeFell);
    }
 
    private void TreeFell() // This will be called when the tree falls.
    {
        Console.WriteLine("I heard it!");
    }
}
In the Tree.Fall() implementation, you'd simply call the event:
class Tree
{
    public event TreeListener Fell;
        
    public void Fall()
    {
        // Fall down, and make some noise:
        Fell();
    }
}
So, now comes the important question. What if nobody has subscribed to the Tree.Fell event? In that case, the multicast delegate will be empty, and calling it will raise an exception. You heard it right (or did you?): Trees simply aren't supposed to fall over when nobody's around.
The suggested solution is to check whether anybody's listening first (if the event is empty, it will be null):
class Tree
{
    public event TreeListener Fell;
        
    public void Fall()
    {
        if (Fell != null)
            Fell();
    }
}
This, of course, is not thread-safe. To make it thread-safe, you will have to define your own event add/remove functions and take a lock in them, taking the same lock around the if (Fell != null) above.

Conclusion

C# is very nice for quickly building GUI applications. Especially programmers used to MFC can't seem to praise C# loudly enough. But then again, if you are used to rusty pins being driven under your fingernails daily, the prospect of being kicked in the groin at unpredicable times but only once a week must sound really attractive.

How to Find Thousands of Free Ebooks Online


You’ve got an ebook reader (or a laptop or netbook with ebook reading software) now you just need some free books to put it to good use. Read on as we show you the best places to score free books online.
There are quite a few places where you can pay for books online such as Amazon’s Kindle bookstore, Barnes and Nobles’ Nook bookstore, and the Google eBookstore—among many other options—but what about scoring free books? Let’s take a look at some of the more popular free book destinations online.  Each entry includes information about the site and what kind of ebook formats the site natively supports.
A few note worthy things before we continue. First things first, you’re going to need an ebook reader. This could be a physical ebook device like the Amazon Kindle, the Barnes and Noble Nook, or a Sony eBook Reader. It could also be your laptop, smart phone, or computer running ebook software—such as the Kindle or Nook software for PCs or a third party ebook reading software. Chances are that if you’re reading this article you’ve already got that part figured out; we just didn’t want anything to stand between you and your free books.
Second, If you’re going to be converting between ebook formats (such as converting ePUB books to MOBI books for use on your Kindle) we highly recommend the robust and powerful open-source ebook management software Calibre—we can’t stress enough how awesome Calibre is for managing and converting your ebook collection.
Finally, the following methods for finding free ebooks are all legal. We know as well as the next geek that anybody and their brother can fire up a BitTorrent client and download entire ebook libraries or simply hunt and peck in Google search results for PDF files; this roundup, however,  is focused on legitimate channels for acquiring new reading material. Downloading these free books might make book publishers sad over their lost profits but they won’t send an armada of lawyers after you.

Project Gutenberg


Project Gutenberg is the grand daddy of free ebook web sites. Started by Michael Hart in the 1970s the original collection was a small assortment of books that Hart hand typed in order to digitize classic works of literature. Since then the project has grown enormously and now contains 33,000 books and documents in the public domain. You won’t find a larger or better organized collection of classics anywhere on the internet.
All the books at Project Gutenberg are free, legal, and available as ePub, Kindle, HTML, and basic text documents.

ManyBooks.net


If you like the idea of Project Gutenberg—a massive index of public domain books—but you’re not a fan of their Spartan interface and text-only listings, then ManyBooks is for you. ManyBooks is essentially a Project Gutenberg mirror with some extras layered on top. Those extras include detailed entries for each book with summaries, cover art, book reviews, and books formatted in over 20 digital formats.
If you’re looking for the Project Gutenberg experience with more of a modern digital bookstore feel and flair, ManyBooks.net is it. All the books are free and formats include LIT, LRF, ePUB, MOBI, PDF, and more.

DailyLit


DailyLit takes a novel approach to ebooks. Rather than offer an entire book for instant download, they’ve essentially modernized the idea of the serialized novel. In decades past magazines and newspapers would print books, almost always popular fiction, in serial form breaking the book up into small segments. The publication’s readers were able to enjoy the book and the author was paid a lump sum by the publication. DailyLit takes that model and applies it to email and RSS. You pick out a book, they send you a chunk every day, and you read and enjoy it with a small bit of advertising attached.
They solve two dilemmas which this arrangement: how to get commercial books in front of people for free and how to fit reading into a busy schedule. It’s not a perfect solution for everyone but the books are free and the topics diverse. DailyLit currently features a selection of around a thousand books.

FeedBooks


FeedBooks has a regular ebook storefront, but the part we’re interested in is their public domain and original books sections. Between the two they have thousands of novels, short stories, and poetry collections. It is one of the smaller collections in our roundup but we’re not going to complain—free but small is still free.
All FeedBooks ebooks are in ePUB format.

Amazon’s Free and Discounted Section


You may be wondering why Amazon, given its size, wasn’t at the top of the list. The hassle factor of using Amazon’s services—unless you’re a Kindle owner or Kindle software user—is quite high. None the less you can score some free books of both the public domain and 100%-off-promotion variety. Amazon’s store has over 15,000 public domain books and hundreds of promotional books at any given time.
To use the free books from Amazon you’ll need to send them either to your Kindle or to your Kindle software on your computer, Android phone, or other device. If you’re trying to rip them to another format you’ll need to use the software on a computer so you can easily access the files. Send the books to your Kindle for PC account, open the folder with your books, and dump them into Calibre.
Public domain and completely free books are not encrypted and you can easily use Calibre to convert them to other formats. Books which are not public domain but are temporarily free as a promotion are still encrypted and cannot be converted in Calibre. Still, if you really want to read a book that’s temporarily free in the Amazon Kindle bookstore, it might be worth loading the Kindle software on your computer or phone—this is one of the few methods for legally getting non-public-domain books for free-as-in-beer.

Note: The Nook ebook store and the Sony Reader ebook store both have similar free section, though not as large as Amazon’s.

7 Things You Didn’t Know VLC Could Do


VLC media player is one of the most popular player for  most people.It as got almost all codecs.VLC can do a lot of other things beyond your imagination. icon wink 7 Things You Didnt Know VLC Could Do Find out how many of these listed below you knew, and how many you did not. I would like to share it here icon smile 7 Things You Didnt Know VLC Could Do

1. Rip DVDs:

VLC includes a basic DVD ripper. You probably would never use it when there are better DVD rippers available, but it helps to know that you can in fact, get a decent quality DVD rip with VLC. To rip a movie follow these steps: Go to the Media menu and choose Convert–>Save. Click on the Disc tab.
  • Here you can adjust the Starting Position and rip only specific titles or chapters.
  • Enter file name making sure to end with .MPG, and start ripping.
  • Click Save.

2. Record videos:

With the new VLC, you can record videos during playback. The record button is hidden by default. To see it, click on View–>Advanced Control. The record button will now appear. Clicking on the button while playing a movie or video will start recording. Clicking again will stop recording.

3. Play RAR files:

Do you know VLC can play videos zipped inside RAR files? They play like normal video files and you can even use the seek bar. If the RAR file is split into several files, no problem. Just load the first part (.part001.rar ) and it will automatically take the rest of the parts and play the whole file.

4. Play in ASCII mode:

VLC media player has an amusing ability, to playback movies in ASCII art. To enable ASCII mode, open VLC media player and click on Tools –>Preferences. Open the section “Video” section and under “Output” select “Color ASCII art video output” from the drop down menu. Save it. Now play any video file to enjoy the ASCII art.

5. Listen to online radio:

VLC includes hundreds of Shoutcast radio stations. You just need to enable it through Media –>Services Discovery –> Shoutcast radio listings. Now, open the Playlist and browse through the stations.

6. Convert Audio and Video formats:

In VLC you can convert video and audio files from one format to another. Several different formats are supported like MP4, WMV, AVI, OGG, MP3 etc. To access the converter:
* Go to Media –>Convert/Save.
* Load the file you want to convert using the Add button and click Convert.
* Now choose the output format and output file location.

7. Download YouTube and other online videos:

First grab the URL of the YouTube video page. Now click on Media –>Open Network stream. Paste the URL and click Play.
Once VLC starts streaming the video, click Tools –>Codec Information and at the bottom of the window you will see a Location box. Copy the URL and paste it on your browser’s address bar. The browser will now download the file which you can save it to your hard disk. Alternatively, you can record the video. icon smile 7 Things You Didnt Know VLC Could Do


Windows Keyboard Shortcuts You Might Not Know

Mastering the keyboard will not only increase your navigation speed but it can also help with wrist fatigue. Here are some lesser known Windows shortcuts to help you become a keyboard ninja.

Global Windows Shortcuts

 

Win + Right Arrow: Sends the window to the right half of the screen. This is a new feature in Windows 7—usually, you must drag the window all the way to the very bottom right corner for Windows to recognize you want to dock this window on the right. This shortcut sends the window there with just a button click.

Win + Left Arrow: Sends the window the left half of the screen. When used with the shortcut above, you can see your windows side by side. This is great for comparing products online or fact checking with the internet in one window and a Word file in another.

Win + Home: Minimizes or restores everything but the current window. Windows 7 allows users to “shake” the current window to minimize all other windows. This shortcut takes the place of the awkward shaking.

Win + +: Hitting this shortcut will zoom in. Windows 7 has a magnifier that works with almost any window. This shortcut activates the magnifier.

Win + –: Conversely, this shortcut allows you to zoom out. It should be easy to remember—plus zooms in, minus zooms out.

Win + G: Displays gadgets in front of other windows. So, if you are making use of the gadgets and want to see what they are doing behind your current windows, just quickly hit this shortcut and the gadgets appear on top of your current windows.

Win + Up Arrow: Maximizes the current window.

Win + Down Arrow: Minimizes the current window.

Win+1, 2, 3, 4, etc. will launch each program in your taskbar. It is helpful then to keep your most used programs at the beginning of your task bar so you can open them one right after another. This also works in Windows Vista for the quick launch icons.
Win+Alt+1, 2, 3, etc. will open the jump list for each program in the taskbar. You can then use your arrows to select which jump list option you want to open.
Win+T will cycle through taskbar programs. This is similar to just hovering over the item with your mouse but you can launch the program with Space or Enter.
Win+Home minimizes all programs except current the window.

Win+B selects the system tray which isn’t always useful but can come in very handy if your mouse stops working.
Win+Up/Down maximizes and restores down the current window so long as that window has the option to be maximized. It is exactly the same as clicking on the middle button on your windows.
Alt+Esc is like Alt+Tab but switches windows in the order they were opened and does not have the fancy window preview overlay.

Win+Pause/Break will open your system properties window. This can be helpful if you need to see the name of a computer or simple system statistics.
Ctrl+Esc can be used to open the start menu but will not work as a Windows key replacement for other shortcuts.

Ctrl+Shift+Esc will open the task manager without needing to hit Ctrl+Alt+Del first.
Alt+Space will open the window system menu which can be used to maximize (x), minimize (n), close (c), or move (m) the window which can be especially helpful if your window is somehow off-screen. This shortcut can also be helpful with windows that don’t close with the Alt+F4 shortcut such as the command window.

Windows Explorer Shortcuts

Here are handy shortcuts built into Windows Explorer which may have similar features in other programs too.

Alt+Up will navigate up one folder level since the up arrow on the menu bar was removed in Windows Vista. Alternatively, you can also make Backspace go up one folder level with a handy AutoHotKey script.

Shift+F10 opens the contextual or “right click” menu for a file/folder. This can be very handy for speed especially if you know which option you want to select. Look for an underlined letter in each option to know which letter you can press for faster access.
Shift+Del deletes a file without sending it to the recycle bin because who wants to empty their recycle bin anyway?

Ctrl+Shift+N creates a new folder in your current directory.

Alt+Enter opens the file properties so you can view file size, sharing settings, and creation date.
F2 renames a file or folder.

F3 will open explorer and select the search bar. If you already have an explorer window open it will highlight the search bar. In some programs it will also open the search dialog to search within that program.
F6 cycles objects in the current window. In explorer this will cycle between the location bar, options bar, left pane, and right pane. It also works with varying success in other programs. F10 toggles the file menu in explorer.

Have You Ever Wondered How Your Operating System Got Its Name?



Have you ever wondered what “XP” stands for or where “Ubuntu” comes from? Some operating systems get their names from obvious places, but others need some explaining. Read on to find out where your favorite OS got its name.
We’ve rounded up the most popular and well-known operating systems, as well as a few lesser-known ones—if you know of another operating system with an interesting story behind its name, make sure to teach your fellow readers in the comments.

MS-DOS

 


Micro Soft Disk Operating System (MS-DOS) was originally licensed from Seattle Consumer Products’ Quick and Dirty Operating System (QDOS). MS-DOS had no graphical user interface (GUI) and instead everything was inputted by users via a command prompt. The DOS acronym does not always mean MS-DOS. DOS is a generic term for “Disk Operating System” and MS-DOS was just one of many including Apple DOS, AmigaDOS, freeDOS, and many others.

Windows 1.0 – NT 4.0

The Windows name came from the fact that the new operating system, Windows 1.0, had windows a user could interact with in the GUI. The “Windows” name carries through all the way to current operating system and the number or name following “Windows” is how you can tell what version of Windows you have.

Microsoft stuck with the numbering scheme for 1.0-3.1 when it started to work on its New Technology (NT) branch of the operating system. Windows NT 4.0 was the first to implement the new NT kernel and was released in 1996 using the Windows 95 user interface.

Windows 95 – ME


Microsoft for a short while began naming their Windows operating system with the year of release indicating the version. Windows 95, 98, and Millennium Edition were all built off of the original Windows 3.1 kernel. Millennium Edition was release in 2000 and was designed to be used on home computers while Windows 2000 was designed for business computers.
Windows 2000 used the NT kernel and was the direct successor to NT 4.0, it was later replaced by Windows XP.

Windows XP, Vista, and Windows 7


Windows XP was released in 2001 and the XP stands for eXPerience. This experience lasted all the way until 2007 when Microsoft released Windows Vista. According to Microsoft, Vista got its name because “At the end of the day…what you’re trying to get to is your own personal Vista.” It was very philosophical of Microsoft but ultimately they moved to a more simple approach with Windows 7.
Windows 7 is the seventh version of Windows since 95. Even though 95 wasn’t the first version of Windows if you count 1.0 – 3.1, but Windows 10 just doesn’t have the same ring to it. Plus people might get it confused with Mac OS 10.

System 1 – 7.5

Apple’s System operating system was developed for the Macintosh personal computer. The operating system has always followed a basic revision numbering scheme with every major release getting a 1 point increment with minor updates getting a 0.1 increment.
The Apple Macintosh computer was released in 1984 and got its name from the McIntosh apple.

Each new version featured incremental updates and feature enhancements as well as support for newer Apple computers. System 1-4 had no multitasking support which may sound familiar to another Apple operating system.
The first seven versions of the operating system were simply called “System 1-7.” This held true until 7.6 when the word “System” was dropped in favor of a more marketable “Mac OS” name.

Mac OS 8 – 10


Mac OS 8 came out in 1997 shortly after Steve Jobs came back to work for Apple. Mac OS 8 was supposed to be called version 7.7 but was changed to 8 because of a legal loophole that allowed Apple to shut down the 3rd party Macintosh market.
Mac OS 9 is now known as the last of the “Classic” Mac OSs and was the final release to be based on Apple’s in house code.
OS X (OS Ten) is the tenth version of the Mac operating system and the first Mac OS based on Berkeley Software Distribution (BSD). The underlying OS was developed by the company Steve Jobs started while away from Apple, NeXTSTEP, which Apple acquired in 1997.

Each minor version of OS X (10.1, 10.2, etc.) also has an associated big cat name. While there is some speculation on where Apple got the idea for these names, it is a pretty big coincidence that the operating system would share names with the now depreciated Macintosh clones built by Shaye as well as a pretty convincing argument over OS X names and German tanks.

Linux

Linux itself got its name from Ari Lemmke who ran the FTP server the original Linux Kernel was uploaded to. Linus Torvalds, the creator of the Linux kernel, wanted to name the kernel Freax, but Ari instead gave him a folder called “linux” to upload his kernel to. The Linux name came from “Linus’ Minix” which was the operating system Linus was trying to replace for himself.

Ubuntu


Ubuntu (oo-BOON-too) comes from the Zulu and Xhosa languages in Africa roughly meaning “humanity towards others.”
Like many Linux distributions, Ubuntu releases have two names for every release, a development code name and a version name. The numerical name for the release is based on the year and month of the release, e.g., version 10.04 was released in April of 2010. Every two years a long term support (LTS) release is also made which carries the LTS lettering and also has an incremental release for bug fixes. The current long term support version is Ubuntu 10.04.2 LTS.
The code names are based on an alphabetical increment of an adjective and animal of the same letter. The animal naming came early in the development and usually reflects the state of the current Ubuntu distribution, e.g., Warty Warthog was the first release to signify its lack of polish. Ever release since Breeze Badger (5.10) has been in alphabetical order.
Ubuntu also has derivatives that have either a specific focus, location, or major difference in the operating system that requires a different distribution name. Some of the official derivatives are Kubuntu, Xubuntu, Mythbuntu, and Eubuntu. All of the official derivatives follow the same naming scheme as Ubuntu.
There are also Ubuntu customizations like Linux Mint, Linspire, and Ubuntulite which all have their own code names and version numbering.

Debian


Debian got its name from Ian Murdock the creator of the Debian distribution. He named the distribution after his girlfriend Debra Lynn by combining her name and his into “Debian.”
Each stable Debian release has an associated version number (1.0, 2.0, etc.), but it also has a code name based on a character from the movie 1995 movie Toy Story. The latest 6.0 release is named after the toy aliens “Squeeze.” The development branch of Debian is permanently named “Sid” from the emotionally unstable neighbor in the movie.

Red Hat/Fedora/CentOS


Red Hat Linux received its name because red hats have been the symbol of freedom and revolution in both the U.S. and France. Red Hat comes in a few different flavors, Red Hat Enterprise Linux (RHEL), Fedora Project, and CentOS
Red Hat Enterprise Linux does not use code names and instead just uses version numbers similar to OS X.
Fedora gets its name from the Red Hat logo in which Shadowman, the man in the logo, wears a red fedora hat. Fedora 1-6 were known as Fedora Core while later versions dropped “core” from the name.
Fedora uses code names that are relational to the previous release. Each release is related to the first with an “is-a” relationship to its predecessor. For example, version 7 “Moonshine” is a record label like version 6 “Zod”, but it is also a movie like version 8 “Werewolf.”
CentOS is the community-supported version of RHEL. The name comes from Community ENTerprise Operating System and is one of the most popular web server operating systems. Version numbers for CentOS follow RHEL version numbering and does not have code names.

Gentoo


Gentoo got its name from Daniel Robbins after renaming his Enoch Linux distribution. Gentoo was first renamed when Daniel and the other developers began using the EGCS compiler instead of the GCC compiler for added features and speed. Gentoo is named after the fastest swimming penguin, the Gentoo penguin.
The stylized “g” logo resembles a silver Japanese Magatama which were often found at grave sites as offerings to deities.

SuSE


SuSE is a German distribution which originally stood for “Software und System Entwicklung” which in English translates to “Software and System Development.” Since 1998 the acronym is no longer used and the the name of the company is simply SUSE.
The original release of SuSE Linux was version 4.2 instead of 1.0 in reference to the “Answer to the Ultimate Question of Life, the Universe, and Everything” from The Hitchhiker’s Guide to the Galaxy.
SUSE’s mascot is a Veiled chameleon named “Geeko” from the words “gecko” and “geek.”
SUSE is now owned by Novell and the free Linux distribution is known as openSUSE.

Make Windows 7 Start Menu Search Find Your Applications Faster

When you first get your shiny new Windows 7 PC, typing anything into the Start Menu search box returns exactly what you want instantly—but what about once you’ve built up loads of files? It tends to get really slow, but here’s how to fix it.
Note: we’re assuming that you already use Disk Cleanup on a regular basis, or maybe you’ve already setup CCleaner to clean your PC on a schedule. Still slow? Keep reading.

Make the Start Menu Only Search Applications

The first thing you can do is change the Start Menu search box to only search through your applications in the Start Menu, rather than finding documents, pictures, emails, and going through your internet history.
Head into Taskbar and Start Menu Properties by right-clicking on the Start orb and choosing Properties, then click Customize.
image
Now scroll down in the list until you find “Search other files and libraries”, which you should set to “Don’t search”.
image
Note: only make this change if you don’t want to search for documents, pictures, etc, from the Start Menu search box.

Increase Search Speed by Tweaking Search Locations

The second way you can tweak the Start Menu search box to work a little faster is by simply cleaning up the locations that you are indexing so less files are included in the index. This isn’t going to magically make everything all better, but it’ll definitely help if you’ve got loads and loads of files that are being indexed.
Open up Indexing Options, which you can find easily in the Start Menu search box, and then click the Modify button at the bottom of the window.
image
Now you’ll be able to tweak the indexed locations—if you’ve got directories with loads and loads of files that you’ll never need to search through, you should probably remove them from the search. For instance, I’ve got a couple of code directories with 10,000 files in them, so I got rid of those.
image
Keep in mind that if you remove items from the index, you’re removing them from the entire index—so if you have a documents folder that you frequently search via Windows Explorer, you probably should leave it enabled.
Note: once you make this change, Windows will have to do some index cleanup, so you won’t instantly see results, and depending on just how many files you have in the index, it might slow the PC down slightly for a very short while as Windows removes the files from the index. Once it’s all done, however, your Start Menu search should be a bit faster.

The Art of File and Folder Organization

Is your desktop a paragon of neatness, or is it overflowing with so many icons that you’re scared to look at it? If you’ve been putting off getting organized because the task is too huge or daunting, or you don’t know where to start, we’ve got 40 tips to get you on the path to zen mastery of your digital filing system.
For all those readers who would like to get their files and folders organized, or, if they’re already organized, better organized—we have compiled a complete guide to getting organized and staying organized, a comprehensive article that will hopefully cover every possible tip you could want.
Signs that Your Computer is Poorly Organized
If your computer is a mess, you’re probably already aware of it.  But just in case you’re not, here are some tell-tale signs:
  • Your Desktop has over 40 icons on it
  • “My Documents” contains over 300 files and 60 folders, including MP3s and digital photos
  • You use the Windows’ built-in search facility whenever you need to find a file
  • You can’t find programs in the out-of-control list of programs in your Start Menu
  • You save all your Word documents in one folder, all your spreadsheets in a second folder, etc
  • Any given file that you’re looking for may be in any one of four different sets of folders
But before we start, here are some quick notes:
  • We’re going to assume you know what files and folders are, and how to create, save, rename, copy and delete them
  • The organization principles described in this article apply equally to all computer systems.  However, the screenshots here will reflect how things look on Windows (usually Windows 7).  We will also mention some useful features of Windows that can help you get organized.
  • Everyone has their own favorite methodology of organizing and filing, and it’s all too easy to get into “My Way is Better than Your Way” arguments.  The reality is that there is no perfect way of getting things organized.  When I wrote this article, I tried to keep a generalist and objective viewpoint.  I consider myself to be unusually well organized (to the point of obsession, truth be told), and I’ve had 25 years experience in collecting and organizing files on computers.  So I’ve got a lot to say on the subject.  But the tips I have described here are only one way of doing it.  Hopefully some of these tips will work for you too, but please don’t read this as any sort of “right” way to do it.
At the end of the article we’ll be asking you, the reader, for your own organization tips.

Why Bother Organizing At All?

For some, the answer to this question is self-evident. And yet, in this era of powerful desktop search software (the search capabilities built into the Windows Vista and Windows 7 Start Menus, and third-party programs like Google Desktop Search), the question does need to be asked, and answered.
I have a friend who puts every file he ever creates, receives or downloads into his My Documents folder and doesn’t bother filing them into subfolders at all.  He relies on the search functionality built into his Windows operating system to help him find whatever he’s looking for.  And he always finds it.  He’s a Search Samurai.  For him, filing is a waste of valuable time that could be spent enjoying life!
It’s tempting to follow suit.  On the face of it, why would anyone bother to take the time to organize their hard disk when such excellent search software is available?  Well, if all you ever want to do with the files you own is to locate and open them individually (for listening, editing, etc), then there’s no reason to ever bother doing one scrap of organization.  But consider these common tasks that are not achievable with desktop search software:
  • Find files manually.  Often it’s not convenient, speedy or even possible to utilize your desktop search software to find what you want.  It doesn’t work 100% of the time, or you may not even have it installed.  Sometimes its just plain faster to go straight to the file you want, if you know it’s in a particular sub-folder, rather than trawling through hundreds of search results.
  • Find groups of similar files (e.g. all your “work” files, all the photos of your Europe holiday in 2008, all your music videos, all the MP3s from Dark Side of the Moon, all your letters you wrote to your wife, all your tax returns).  Clever naming of the files will only get you so far.  Sometimes it’s the date the file was created that’s important, other times it’s the file format, and other times it’s the purpose of the file.  How do you name a collection of files so that they’re easy to isolate based on any of the above criteria?  Short answer, you can’t.
  • Move files to a new computer.  It’s time to upgrade your computer.  How do you quickly grab all the files that are important to you?  Or you decide to have two computers now – one for home and one for work.  How do you quickly isolate only the work-related files to move them to the work computer?
  • Synchronize files to other computers.  If you have more than one computer, and you need to mirror some of your files onto the other computer (e.g. your music collection), then you need a way to quickly determine which files are to be synced and which are not.  Surely you don’t want to synchronize everything?
  • Choose which files to back up.  If your backup regime calls for multiple backups, or requires speedy backups, then you’ll need to be able to specify which files are to be backed up, and which are not.  This is not possible if they’re all in the same folder.
Finally, if you’re simply someone who takes pleasure in being organized, tidy and ordered (me! me!), then you don’t even need a reason.  Being disorganized is simply unthinkable.

Tips on Getting Organized

Here we present our 40 best tips on how to get organized.  Or, if you’re already organized, to get better organized.
Tip #1.  Choose Your Organization System Carefully
The reason that most people are not organized is that it takes time.  And the first thing that takes time is deciding upon a system of organization.  This is always a matter of personal preference, and is not something that a geek on a website can tell you.  You should always choose your own system, based on how your own brain is organized (which makes the assumption that your brain is, in fact, organized).
We can’t instruct you, but we can make suggestions:
  • You may want to start off with a system based on the users of the computer.  i.e. “My Files”, “My Wife’s Files”, My Son’s Files”, etc.  Inside “My Files”, you might then break it down into “Personal” and “Business”.  You may then realize that there are overlaps.  For example, everyone may want to share access to the music library, or the photos from the school play.  So you may create another folder called “Family”, for the “common” files.
  • You may decide that the highest-level breakdown of your files is based on the “source” of each file.  In other words, who created the files.  You could have “Files created by ME (business or personal)”, “Files created by people I know (family, friends, etc)”, and finally “Files created by the rest of the world (MP3 music files, downloaded or ripped movies or TV shows, software installation files, gorgeous desktop wallpaper images you’ve collected, etc).”  This system happens to be the one I use myself.  See below:
    Mark is for files created by me
    VC is for files created by my company (Virtual Creations)
    Others is for files created by my friends and family
    Data is the rest of the world
    Also, Settings is where I store the configuration files and other program data files for my installed software (more on this in tip #34, below).
  • Each folder will present its own particular set of requirements for further sub-organization.  For example, you may decide to organize your music collection into sub-folders based on the artist’s name, while your digital photos might get organized based on the date they were taken.  It can be different for every sub-folder!
  • Another strategy would be based on “currentness”.  Files you have yet to open and look at live in one folder.  Ones that have been looked at but not yet filed live in another place.  Current, active projects live in yet another place.  All other files (your “archive”, if you like) would live in a fourth folder. (And of course, within that last folder you’d need to create a further sub-system based on one of the previous bullet points).
Put some thought into this – changing it when it proves incomplete can be a big hassle!  Before you go to the trouble of implementing any system you come up with, examine a wide cross-section of the files you own and see if they will all be able to find a nice logical place to sit within your system.
Tip #2.  When You Decide on Your System, Stick to It!
There’s nothing more pointless than going to all the trouble of creating a system and filing all your files, and then whenever you create, receive or download a new file, you simply dump it onto your Desktop.  You need to be disciplined – forever!  Every new file you get, spend those extra few seconds to file it where it belongs!  Otherwise, in just a month or two, you’ll be worse off than before – half your files will be organized and half will be disorganized – and you won’t know which is which!
Tip #3.  Choose the Root Folder of Your Structure Carefully
Every data file (document, photo, music file, etc) that you create, own or is important to you, no matter where it came from, should be found within one single folder, and that one single folder should be located at the root of your C: drive (as a sub-folder of C:\).  In other words, do not base your folder structure in standard folders like “My Documents”.  If you do, then you’re leaving it up to the operating system engineers to decide what folder structure is best for you.  And every operating system has a different system!  In Windows 7 your files are found in C:\Users\YourName, whilst on Windows XP it was C:\Documents and Settings\YourName\My Documents.  In UNIX systems it’s often /home/YourName.
These standard default folders tend to fill up with junk files and folders that are not at all important to you.  “My Documents” is the worst offender.  Every second piece of software you install, it seems, likes to create its own folder in the “My Documents” folder.  These folders usually don’t fit within your organizational structure, so don’t use them!  In fact, don’t even use the “My Documents” folder at all.  Allow it to fill up with junk, and then simply ignore it.  It sounds heretical, but: Don’t ever visit your “My Documents” folder!  Remove your icons/links to “My Documents” and replace them with links to the folders you created and you care about!
Create your own file system from scratch!  Probably the best place to put it would be on your D: drive – if you have one.  This way, all your files live on one drive, while all the operating system and software component files live on the C: drive – simply and elegantly separated.  The benefits of that are profound.  Not only are there obvious organizational benefits (see tip #10, below), but when it comes to migrate your data to a new computer, you can (sometimes) simply unplug your D: drive and plug it in as the D: drive of your new computer (this implies that the D: drive is actually a separate physical disk, and not a partition on the same disk as C:).  You also get a slight speed improvement (again, only if your C: and D: drives are on separate physical disks).
Warning:  From tip #12, below, you will see that it’s actually a good idea to have exactly the same file system structure – including the drive it’s filed on – on all of the computers you own.  So if you decide to use the D: drive as the storage system for your own files, make sure you are able to use the D: drive on all the computers you own.  If you can’t ensure that, then you can still use a clever geeky trick to store your files on the D: drive, but still access them all via the C: drive (see tip #17, below).
If you only have one hard disk (C:), then create a dedicated folder that will contain all your files – something like C:\Files.  The name of the folder is not important, but make it a single, brief word.
There are several reasons for this:
  • When creating a backup regime, it’s easy to decide what files should be backed up – they’re all in the one folder!
  • If you ever decide to trade in your computer for a new one, you know exactly which files to migrate
  • You will always know where to begin a search for any file
  • If you synchronize files with other computers, it makes your synchronization routines very simple.   It also causes all your shortcuts to continue to work on the other machines (more about this in tip #24, below).
Once you’ve decided where your files should go, then put all your files in there – Everything!  Completely disregard the standard, default folders that are created for you by the operating system (“My Music”, “My Pictures”, etc).  In fact, you can actually relocate many of those folders into your own structure (more about that below, in tip #6).
The more completely you get all your data files (documents, photos, music, etc) and all your configuration settings into that one folder, then the easier it will be to perform all of the above tasks.
Once this has been done, and all your files live in one folder, all the other folders in C:\ can be thought of as “operating system” folders, and therefore of little day-to-day interest for us.
Here’s a screenshot of a nicely organized C: drive, where all user files are located within the \Files folder:

Tip #4.  Use Sub-Folders
This would be our simplest and most obvious tip.  It almost goes without saying.  Any organizational system you decide upon (see tip #1) will require that you create sub-folders for your files.  Get used to creating folders on a regular basis.
Tip #5.  Don’t be Shy About Depth
Create as many levels of sub-folders as you need.  Don’t be scared to do so.  Every time you notice an opportunity to group a set of related files into a sub-folder, do so.  Examples might include:  All the MP3s from one music CD, all the photos from one holiday, or all the documents from one client.
It’s perfectly okay to put files into a folder called C:\Files\Me\From Others\Services\WestCo Bank\Statements\2009.  That’s only seven levels deep.  Ten levels is not uncommon.  Of course, it’s possible to take this too far.  If you notice yourself creating a sub-folder to hold only one file, then you’ve probably become a little over-zealous.  On the other hand, if you simply create a structure with only two levels (for example C:\Files\Work) then you really haven’t achieved any level of organization at all (unless you own only six files!).  Your “Work” folder will have become a dumping ground, just like your Desktop was, with most likely hundreds of files in it.
Tip #6.  Move the Standard User Folders into Your Own Folder Structure
Most operating systems, including Windows, create a set of standard folders for each of its users.  These folders then become the default location for files such as documents, music files, digital photos and downloaded Internet files.  In Windows 7, the full list is shown below:
Some of these folders you may never use nor care about (for example, the Favorites folder, if you’re not using Internet Explorer as your browser).  Those ones you can leave where they are.  But you may be using some of the other folders to store files that are important to you.  Even if you’re not using them, Windows will still often treat them as the default storage location for many types of files.  When you go to save a standard file type, it can become annoying to be automatically prompted to save it in a folder that’s not part of your own file structure.
But there’s a simple solution:  Move the folders you care about into your own folder structure!  If you do, then the next time you go to save a file of the corresponding type, Windows will prompt you to save it in the new, moved location.
Moving the folders is easy.  Simply drag-and-drop them to the new location.  Here’s a screenshot of the default My Music folder being moved to my custom personal folder (Mark):
Tip #7.  Name Files and Folders Intelligently
This is another one that almost goes without saying, but we’ll say it anyway:  Do not allow files to be created that have meaningless names like Document1.doc, or folders called New Folder (2).  Take that extra 20 seconds and come up with a meaningful name for the file/folder – one that accurately divulges its contents without repeating the entire contents in the name.
Tip #8.  Watch Out for Long Filenames
Another way to tell if you have not yet created enough depth to your folder hierarchy is that your files often require really long names.  If you need to call a file Johnson Sales Figures March 2009.xls (which might happen to live in the same folder as Abercrombie Budget Report 2008.xls), then you might want to create some sub-folders so that the first file could be simply called March.xls, and living in the Clients\Johnson\Sales Figures\2009 folder.
A well-placed file needs only a brief filename!
Tip #9.  Use Shortcuts!  Everywhere!
This is probably the single most useful and important tip we can offer.  A shortcut allows a file to be in two places at once.
Why would you want that?  Well, the file and folder structure of every popular operating system on the market today is hierarchical.  This means that all objects (files and folders) always live within exactly one parent folder.  It’s a bit like a tree.  A tree has branches (folders) and leaves (files).  Each leaf, and each branch, is supported by exactly one parent branch, all the way back to the root of the tree (which, incidentally, is exactly why C:\ is called the “root folder” of the C: drive).
That hard disks are structured this way may seem obvious and even necessary, but it’s only one way of organizing data.  There are others:  Relational databases, for example, organize structured data entirely differently.  The main limitation of hierarchical filing structures is that a file can only ever be in one branch of the tree – in only one folder – at a time.  Why is this a problem?  Well, there are two main reasons why this limitation is a problem for computer users:
  1. The “correct” place for a file, according to our organizational rationale, is very often a very inconvenient place for that file to be located.  Just because it’s correctly filed doesn’t mean it’s easy to get to.  Your file may be “correctly” buried six levels deep in your sub-folder structure, but you may need regular and speedy access to this file every day.  You could always move it to a more convenient location, but that would mean that you would need to re-file back to its “correct” location it every time you’d finished working on it.  Most unsatisfactory.
  2. A file may simply “belong” in two or more different locations within your file structure.  For example, say you’re an accountant and you have just completed the 2009 tax return for John Smith.  It might make sense to you to call this file 2009 Tax Return.doc and file it under Clients\John Smith.  But it may also be important to you to have the 2009 tax returns from all your clients together in the one place.  So you might also want to call the file John Smith.doc and file it under Tax Returns\2009.  The problem is, in a purely hierarchical filing system, you can’t put it in both places.  Grrrrr!
Fortunately, Windows (and most other operating systems) offers a way for you to do exactly that:  It’s called a “shortcut” (also known as an “alias” on Macs and a “symbolic link” on UNIX systems).  Shortcuts allow a file to exist in one place, and an icon that represents the file to be created and put anywhere else you please.  In fact, you can create a dozen such icons and scatter them all over your hard disk.  Double-clicking on one of these icons/shortcuts opens up the original file, just as if you had double-clicked on the original file itself.
Consider the following two icons:
The one on the left is the actual Word document, while the one on the right is a shortcut that represents the Word document.  Double-clicking on either icon will open the same file.  There are two main visual differences between the icons:
  1. The shortcut will have a small arrow in the lower-left-hand corner (on Windows, anyway)
  2. The shortcut is allowed to have a name that does not include the file extension (the “.docx” part, in this case)
You can delete the shortcut at any time without losing any actual data.  The original is still intact.  All you lose is the ability to get to that data from wherever the shortcut was.
So why are shortcuts so great?  Because they allow us to easily overcome the main limitation of hierarchical file systems, and put a file in two (or more) places at the same time.  You will always have files that don’t play nice with your organizational rationale, and can’t be filed in only one place.  They demand to exist in two places.  Shortcuts allow this!  Furthermore, they allow you to collect your most often-opened files and folders together in one spot for convenient access.  The cool part is that the original files stay where they are, safe forever in their perfectly organized location.
So your collection of most often-opened files can – and should – become a collection of shortcuts!
If you’re still not convinced of the utility of shortcuts, consider the following well-known areas of a typical Windows computer:
  • The Start Menu (and all the programs that live within it)
  • The Quick Launch bar (or the Superbar in Windows 7)
  • The “Favorite folders” area in the top-left corner of the Windows Explorer window (in Windows Vista or Windows 7)
  • Your Internet Explorer Favorites or Firefox Bookmarks
Each item in each of these areas is a shortcut!  Each of those areas exist for one purpose only:  For convenience – to provide you with a collection of the files and folders you access most often.
It should be easy to see by now that shortcuts are designed for one single purpose:  To make accessing your files more convenient.  Each time you double-click on a shortcut, you are saved the hassle of locating the file (or folder, or program, or drive, or control panel icon) that it represents.
Shortcuts allow us to invent a golden rule of file and folder organization:
“Only ever have one copy of a file – never have two copies of the same file.  Use a shortcut instead”
(this rule doesn’t apply to copies created for backup purposes, of course!)
There are also lesser rules, like “don’t move a file into your work area – create a shortcut there instead”, and “any time you find yourself frustrated with how long it takes to locate a file, create a shortcut to it and place that shortcut in a convenient location.”
So how to we create these massively useful shortcuts?  There are two main ways:
  1. “Copy” the original file or folder (click on it and type Ctrl-C, or right-click on it and select Copy):
     
    Then right-click in an empty area of the destination folder (the place where you want the shortcut to go) and select Paste shortcut:
  2. Right-drag (drag with the right mouse button) the file from the source folder to the destination folder.  When you let go of the mouse button at the destination folder, a menu pops up:
    Select Create shortcuts here.
Note that when shortcuts are created, they are often named something like Shortcut to Budget Detail.doc (windows XP) or Budget Detail – Shortcut.doc (Windows 7).   If you don’t like those extra words, you can easily rename the shortcuts after they’re created, or you can configure Windows to never insert the extra words in the first place.
And of course, you can create shortcuts to folders too, not just to files!
Bottom line:
Whenever you have a file that you’d like to access from somewhere else (whether it’s convenience you’re after, or because the file simply belongs in two places), create a shortcut to the original file in the new location.
Tip #10.  Separate Application Files from Data Files
Any digital organization guru will drum this rule into you.  Application files are the components of the software you’ve installed (e.g. Microsoft Word, Adobe Photoshop or Internet Explorer).  Data files are the files that you’ve created for yourself using that software (e.g. Word Documents, digital photos, emails or playlists).
Software gets installed, uninstalled and upgraded all the time.  Hopefully you always have the original installation media (or downloaded set-up file) kept somewhere safe, and can thus reinstall your software at any time.  This means that the software component files are of little importance.  Whereas the files you have created with that software is, by definition, important.  It’s a good rule to always separate unimportant files from important files.
So when your software prompts you to save a file you’ve just created, take a moment and check out where it’s suggesting that you save the file.  If it’s suggesting that you save the file into the same folder as the software itself, then definitely don’t follow that suggestion.  File it in your own folder!  In fact, see if you can find the program’s configuration option that determines where files are saved by default (if it has one), and change it.
Tip #11.  Organize Files Based on Purpose, Not on File Type
If you have, for example a folder called Work\Clients\Johnson, and within that folder you have two sub-folders, Word Documents and Spreadsheets (in other words, you’re separating “.doc” files from “.xls” files), then chances are that you’re not optimally organized.  It makes little sense to organize your files based on the program that created them.  Instead, create your sub-folders based on the purpose of the file.  For example, it would make more sense to create sub-folders called Correspondence and Financials.  It may well be that all the files in a given sub-folder are of the same file-type, but this should be more of a coincidence and less of a design feature of your organization system.
Tip #12.  Maintain the Same Folder Structure on All Your Computers
In other words, whatever organizational system you create, apply it to every computer that you can.  There are several benefits to this:
  • There’s less to remember.  No matter where you are, you always know where to look for your files
  • If you copy or synchronize files from one computer to another, then setting up the synchronization job becomes very simple
  • Shortcuts can be copied or moved from one computer to another with ease (assuming the original files are also copied/moved).  There’s no need to find the target of the shortcut all over again on the second computer
  • Ditto for linked files (e.g Word documents that link to data in a separate Excel file), playlists, and any files that reference the exact file locations of other files.
This applies even to the drive that your files are stored on.  If your files are stored on C: on one computer, make sure they’re stored on C: on all your computers.  Otherwise all your shortcuts, playlists and linked files will stop working!
Tip #13.  Create an “Inbox” Folder
Create yourself a folder where you store all files that you’re currently working on, or that you haven’t gotten around to filing yet.  You can think of this folder as your “to-do” list.  You can call it “Inbox” (making it the same metaphor as your email system), or “Work”, or “To-Do”, or “Scratch”, or whatever name makes sense to you.  It doesn’t matter what you call it – just make sure you have one!
Once you have finished working on a file, you then move it from the “Inbox” to its correct location within your organizational structure.
You may want to use your Desktop as this “Inbox” folder.  Rightly or wrongly, most people do.  It’s not a bad place to put such files, but be careful:  If you do decide that your Desktop represents your “to-do” list, then make sure that no other files find their way there.  In other words, make sure that your “Inbox”, wherever it is, Desktop or otherwise, is kept free of junk – stray files that don’t belong there.
So where should you put this folder, which, almost by definition, lives outside the structure of the rest of your filing system?  Well, first and foremost, it has to be somewhere handy.  This will be one of your most-visited folders, so convenience is key.  Putting it on the Desktop is a great option – especially if you don’t have any other folders on your Desktop:  the folder then becomes supremely easy to find in Windows Explorer:
You would then create shortcuts to this folder in convenient spots all over your computer (“Favorite Links”, “Quick Launch”, etc).
Tip #14.  Ensure You have Only One “Inbox” Folder
Once you’ve created your “Inbox” folder, don’t use any other folder location as your “to-do list”.  Throw every incoming or created file into the Inbox folder as you create/receive it.  This keeps the rest of your computer pristine and free of randomly created or downloaded junk.  The last thing you want to be doing is checking multiple folders to see all your current tasks and projects.  Gather them all together into one folder.
Here are some tips to help ensure you only have one Inbox:
  • Set the default “save” location of all your programs to this folder.
  • Set the default “download” location for your browser to this folder.
  • If this folder is not your desktop (recommended) then also see if you can make a point of not putting “to-do” files on your desktop.  This keeps your desktop uncluttered and Zen-like:
(the Inbox folder is in the bottom-right corner)
Tip #15.  Be Vigilant about Clearing Your “Inbox” Folder
This is one of the keys to staying organized.  If you let your “Inbox” overflow (i.e. allow there to be more than, say, 30 files or folders in there), then you’re probably going to start feeling like you’re overwhelmed:  You’re not keeping up with your to-do list.  Once your Inbox gets beyond a certain point (around 30 files, studies have shown), then you’ll simply start to avoid it.  You may continue to put files in there, but you’ll be scared to look at it, fearing the “out of control” feeling that all overworked, chaotic or just plain disorganized people regularly feel.
So, here’s what you can do:
  • Visit your Inbox/to-do folder regularly (at least five times per day).
  • Scan the folder regularly for files that you have completed working on and are ready for filing.  File them immediately.
  • Make it a source of pride to keep the number of files in this folder as small as possible.  If you value peace of mind, then make the emptiness of this folder one of your highest (computer) priorities
  • If you know that a particular file has been in the folder for more than, say, six weeks, then admit that you’re not actually going to get around to processing it, and move it to its final resting place.
Tip #16.  File Everything Immediately, and Use Shortcuts for Your Active Projects
As soon as you create, receive or download a new file, store it away in its “correct” folder immediately.  Then, whenever you need to work on it (possibly straight away), create a shortcut to it in your “Inbox” (“to-do”) folder or your desktop.  That way, all your files are always in their “correct” locations, yet you still have immediate, convenient access to your current, active files.  When you finish working on a file, simply delete the shortcut.
Ideally, your “Inbox” folder – and your Desktop – should contain no actual files or folders.  They should simply contain shortcuts.
Tip #17.  Use Directory Symbolic Links (or Junctions) to Maintain One Unified Folder Structure
Using this tip, we can get around a potential hiccup that we can run into when creating our organizational structure – the issue of having more than one drive on our computer (C:, D:, etc).  We might have files we need to store on the D: drive for space reasons, and yet want to base our organized folder structure on the C: drive (or vice-versa).
Your chosen organizational structure may dictate that all your files must be accessed from the C: drive (for example, the root folder of all your files may be something like C:\Files).  And yet you may still have a D: drive and wish to take advantage of the hundreds of spare Gigabytes that it offers.  Did you know that it’s actually possible to store your files on the D: drive and yet access them as if they were on the C: drive?  And no, we’re not talking about shortcuts here (although the concept is very similar).
By using the shell command mklink, you can essentially take a folder that lives on one drive and create an alias for it on a different drive .  These aliases are called directory symbolic links (and used to be known as junctions).  You can think of them as “virtual” folders.  They function exactly like regular folders, except they’re physically located somewhere else.
For example, you may decide that your entire D: drive contains your complete organizational file structure, but that you need to reference all those files as if they were on the C: drive, under C:\Files.  If that was the case you could create C:\Files as a directory symbolic link – a link to D:, as follows:
mklink /d c:\files d:\
Or it may be that the only files you wish to store on the D: drive are your movie collection.  You could locate all your movie files in the root of your D: drive, and then link it to C:\Files\Media\Movies, as follows:
mklink /d c:\files\media\movies d:\
(Needless to say, you must run these commands from a command prompt – click the Start button, type cmd and press Enter)
Tip #18. Customize Your Folder Icons
This is not strictly speaking an organizational tip, but having unique icons for each folder does allow you to more quickly visually identify which folder is which, and thus saves you time when you’re finding files.  An example is below (from my folder that contains all files downloaded from the Internet):
Tip #19.  Tidy Your Start Menu
The Windows Start Menu is usually one of the messiest parts of any Windows computer.  Every program you install seems to adopt a completely different approach to placing icons in this menu.  Some simply put a single program icon.  Others create a folder based on the name of the software.  And others create a folder based on the name of the software manufacturer.  It’s chaos, and can make it hard to find the software you want to run.
Thankfully we can avoid this chaos with useful operating system features like Quick Launch, the Superbar or pinned start menu items.
Even so, it would make a lot of sense to get into the guts of the Start Menu itself and give it a good once-over.  All you really need to decide is how you’re going to organize your applications.  A structure based on the purpose of the application is an obvious candidate.  Below is an example of one such structure:
In this structure, Utilities means software whose job it is to keep the computer itself running smoothly (configuration tools, backup software, Zip programs, etc).  Applications refers to any productivity software that doesn’t fit under the headings Multimedia, Graphics, Internet, etc.
In case you’re not aware, every icon in your Start Menu is a shortcut and can be manipulated like any other shortcut (copied, moved, deleted, etc).
With the Windows Start Menu (all version of Windows), Microsoft has decided that there be two parallel folder structures to store your Start Menu shortcuts.  One for you (the logged-in user of the computer) and one for all users of the computer.  Having two parallel structures can often be redundant:  If you are the only user of the computer, then having two parallel structures is totally redundant.  Even if you have several users that regularly log into the computer, most of your installed software will need to be made available to all users, and should thus be moved out of the “just you” version of the Start Menu and into the “all users” area.
To take control of your Start Menu, so you can start organizing it, you’ll need to know how to access the actual folders and shortcut files that make up the Start Menu (both versions of it).  To find these folders and files, click the Start button and then right-click on the All Programs text (Windows XP users should right-click on the Start button itself):
The Open option refers to the “just you” version of the Start Menu, while the Open All Users option refers to the “all users” version.  Click on the one you want to organize.
A Windows Explorer window then opens with your chosen version of the Start Menu selected.  From there it’s easy.  Double-click on the Programs folder and you’ll see all your folders and shortcuts.  Now you can delete/rename/move until it’s just the way you want it.
Note:  When you’re reorganizing your Start Menu, you may want to have two Explorer windows open at the same time – one showing the “just you” version and one showing the “all users” version.  You can drag-and-drop between the windows.
Tip #20Keep Your Start Menu Tidy
Once you have a perfectly organized Start Menu, try to be a little vigilant about keeping it that way.  Every time you install a new piece of software, the icons that get created will almost certainly violate your organizational structure.
So to keep your Start Menu pristine and organized, make sure you do the following whenever you install a new piece of software:
  • Check whether the software was installed into the “just you” area of the Start Menu, or the “all users” area, and then move it to the correct area.
  • Remove all the unnecessary icons (like the “Read me” icon, the “Help” icon (you can always open the help from within the software itself when it’s running), the “Uninstall” icon, the link(s)to the manufacturer’s website, etc)
  • Rename the main icon(s) of the software to something brief that makes sense to you.  For example, you might like to rename Microsoft Office Word 2010 to simply Word
  • Move the icon(s) into the correct folder based on your Start Menu organizational structure
And don’t forget:  when you uninstall a piece of software, the software’s uninstall routine is no longer going to be able to remove the software’s icon from the Start Menu (because you moved and/or renamed it), so you’ll need to remove that icon manually.
Tip #21.  Tidy C:\
The root of your C: drive (C:\) is a common dumping ground for files and folders – both by the users of your computer and by the software that you install on your computer.  It can become a mess.
There’s almost no software these days that requires itself to be installed in C:\.  99% of the time it can and should be installed into C:\Program Files.  And as for your own files, well, it’s clear that they can (and almost always should) be stored somewhere else.
In an ideal world, your C:\ folder should look like this (on Windows 7):
Note that there are some system files and folders in C:\ that are usually and deliberately “hidden” (such as the Windows virtual memory file pagefile.sys, the boot loader file bootmgr, and the System Volume Information folder).  Hiding these files and folders is a good idea, as they need to stay where they are and are almost never needed to be opened or even seen by you, the user.  Hiding them prevents you from accidentally messing with them, and enhances your sense of order and well-being when you look at your C: drive folder.
Tip #22.  Tidy Your Desktop
The Desktop is probably the most abused part of a Windows computer (from an organization point of view).  It usually serves as a dumping ground for all incoming files, as well as holding icons to oft-used applications, plus some regularly opened files and folders.  It often ends up becoming an uncontrolled mess.  See if you can avoid this.  Here’s why…
  • Application icons (Word, Internet Explorer, etc) are often found on the Desktop, but it’s unlikely that this is the optimum place for them.  The “Quick Launch” bar (or the Superbar in Windows 7) is always visible and so represents a perfect location to put your icons.  You’ll only be able to see the icons on your Desktop when all your programs are minimized.  It might be time to get your application icons off your desktop…
  • You may have decided that the Inbox/To-do folder on your computer (see tip #13, above) should be your Desktop.  If so, then enough said.  Simply be vigilant about clearing it and preventing it from being polluted by junk files (see tip #15, above).  On the other hand, if your Desktop is not acting as your “Inbox” folder, then there’s no reason for it to have any data files or folders on it at all, except perhaps a couple of shortcuts to often-opened files and folders (either ongoing or current projects).  Everything else should be moved to your “Inbox” folder.
In an ideal world, it might look like this:
Tip #23.  Move Permanent Items on Your Desktop Away from the Top-Left Corner
When files/folders are dragged onto your desktop in a Windows Explorer window, or when shortcuts are created on your Desktop from Internet Explorer, those icons are always placed in the top-left corner – or as close as they can get.  If you have other files, folders or shortcuts that you keep on the Desktop permanently, then it’s a good idea to separate these permanent icons from the transient ones, so that you can quickly identify which ones the transients are.  An easy way to do this is to move all your permanent icons to the right-hand side of your Desktop.  That should keep them separated from incoming items.
Tip #24.  Synchronize
If you have more than one computer, you’ll almost certainly want to share files between them.  If the computers are permanently attached to the same local network, then there’s no need to store multiple copies of any one file or folder – shortcuts will suffice.  However, if the computers are not always on the same network, then you will at some point need to copy files between them.  For files that need to permanently live on both computers, the ideal way to do this is to synchronize the files, as opposed to simply copying them.
We only have room here to write a brief summary of synchronization, not a full article.  In short, there are several different types of synchronization:
  1. Where the contents of one folder are accessible anywhere, such as with Dropbox
  2. Where the contents of any number of folders are accessible anywhere, such as with Windows Live Mesh
  3. Where any files or folders from anywhere on your computer are synchronized with exactly one other computer, such as with the Windows “Briefcase”, much more powerful, yet still free) SyncBack from 2BrightSparks.  This only works when both computers are on the same local network, at least temporarily.
A great advantage of synchronization solutions is that once you’ve got it configured the way you want it, then the sync process happens automatically, every time.  Click a button (or schedule it to happen automatically) and all your files are automagically put where they’re supposed to be.
If you maintain the same file and folder structure on both computers, then you can also sync files depend upon the correct location of other files, like shortcuts, playlists and office documents that link to other office documents, and the synchronized files still work on the other computer!
Tip #25.  Hide Files You Never Need to See
If you have your files well organized, you will often be able to tell if a file is out of place just by glancing at the contents of a folder (for example, it should be pretty obvious if you look in a folder that contains all the MP3s from one music CD and see a Word document in there).  This is a good thing – it allows you to determine if there are files out of place with a quick glance.  Yet sometimes there are files in a folder that seem out of place but actually need to be there, such as the “folder art” JPEGs in music folders, and various files in the root of the C: drive.  If such files never need to be opened by you, then a good idea is to simply hide them.  Then, the next time you glance at the folder, you won’t have to remember whether that file was supposed to be there or not, because you won’t see it at all!
To hide a file, simply right-click on it and choose Properties:
Then simply tick the Hidden tick-box:
Tip #26.  Keep Every Setup File
These days most software is downloaded from the Internet.  Whenever you download a piece of software, keep it.  You’ll never know when you need to reinstall the software.
Further, keep with it an Internet shortcut that links back to the website where you originally downloaded it, in case you ever need to check for updates.
See tip #33 below for a full description of the excellence of organizing your setup files.
Tip #27.  Try to Minimize the Number of Folders that Contain Both Files and Sub-folders
Some of the folders in your organizational structure will contain only files.  Others will contain only sub-folders.  And you will also have some folders that contain both files and sub-folders.  You will notice slight improvements in how long it takes you to locate a file if you try to avoid this third type of folder.  It’s not always possible, of course – you’ll always have some of these folders, but see if you can avoid it.
One way of doing this is to take all the leftover files that didn’t end up getting stored in a sub-folder and create a special “Miscellaneous” or “Other” folder for them.
Tip #28.  Starting a Filename with an Underscore Brings it to the Top of a List
Further to the previous tip, if you name that “Miscellaneous” or “Other” folder in such a way that its name begins with an underscore “_”, then it will appear at the top of the list of files/folders.
The screenshot below is an example of this.  Each folder in the list contains a set of digital photos.  The folder at the top of the list, _Misc, contains random photos that didn’t deserve their own dedicated folder:
Tip #29.  Clean Up those CD-ROMs and (shudder!) Floppy Disks
Have you got a pile of CD-ROMs stacked on a shelf of your office?  Old photos, or files you archived off onto CD-ROM (or even worse, floppy disks!) because you didn’t have enough disk space at the time?  In the meantime have you upgraded your computer and now have 500 Gigabytes of space you don’t know what to do with?  If so, isn’t it time you tidied up that stack of disks and filed them into your gorgeous new folder structure?
So what are you waiting for?  Bite the bullet, copy them all back onto your computer, file them in their appropriate folders, and then back the whole lot up onto a shiny new 1000Gig external hard drive!

Useful Folders to Create

This next section suggests some useful folders that you might want to create within your folder structure.  I’ve personally found them to be indispensable.
The first three are all about convenience – handy folders to create and then put somewhere that you can always access instantly.  For each one, it’s not so important where the actual folder is located, but it’s very important where you put the shortcut(s) to the folder.  You might want to locate the shortcuts:
  • On your Desktop
  • In your “Quick Launch” area (or pinned to your Windows 7 Superbar)
  • In your Windows Explorer “Favorite Links” area
Tip #30.  Create an “Inbox” (“To-Do”) Folder
This has already been mentioned in depth (see tip #13), but we wanted to reiterate its importance here.  This folder contains all the recently created, received or downloaded files that you have not yet had a chance to file away properly, and it also may contain files that you have yet to process.  In effect, it becomes a sort of “to-do list”.  It doesn’t have to be called “Inbox” – you can call it whatever you want.


Tip #31.  Create a Folder where Your Current Projects are Collected
Rather than going hunting for them all the time, or dumping them all on your desktop, create a special folder where you put links (or work folders) for each of the projects you’re currently working on.
You can locate this folder in your “Inbox” folder, on your desktop, or anywhere at all – just so long as there’s a way of getting to it quickly, such as putting a link to it in Windows Explorer’s “Favorite Links” area:
Tip #32.  Create a Folder for Files and Folders that You Regularly Open
You will always have a few files that you open regularly, whether it be a spreadsheet of your current accounts, or a favorite playlist.  These are not necessarily “current projects”, rather they’re simply files that you always find yourself opening.  Typically such files would be located on your desktop (or even better, shortcuts to those files).  Why not collect all such shortcuts together and put them in their own special folder?
As with the “Current Projects” folder (above), you would want to locate that folder somewhere convenient.  Below is an example of a folder called “Quick links”, with about seven files (shortcuts) in it, that is accessible through the Windows Quick Launch bar:
See tip #37 below for a full explanation of the power of the Quick Launch bar.
Tip #33.  Create a “Set-ups” Folder
A typical computer has dozens of applications installed on it.  For each piece of software, there are often many different pieces of information you need to keep track of, including:
  • The original installation setup file(s).  This can be anything from a simple 100Kb setup.exe file you downloaded from a website, all the way up to a 4Gig ISO file that you copied from a DVD-ROM that you purchased.
  • The home page of the software manufacturer (in case you need to look up something on their support pages, their forum or their online help)
  • The page containing the download link for your actual file (in case you need to re-download it, or download an upgraded version)
  • The serial number
  • Your proof-of-purchase documentation
  • Any other template files, plug-ins, themes, etc that also need to get installed
For each piece of software, it’s a great idea to gather all of these files together and put them in a single folder.  The folder can be the name of the software (plus possibly a very brief description of what it’s for – in case you can’t remember what the software does based in its name).  Then you would gather all of these folders together into one place, and call it something like “Software” or “Setups”.
If you have enough of these folders (I have several hundred, being a geek, collected over 20 years), then you may want to further categorize them.  My own categorization structure is based on “platform” (operating system):
The last seven folders each represents one platform/operating system, while _Operating Systems contains set-up files for installing the operating systems themselves.  _Hardware contains ROMs for hardware I own, such as routers.
Within the Windows folder (above), you can see the beginnings of the vast library of software I’ve compiled over the years:
An example of a typical application folder looks like this:
Tip #34.  Have a “Settings” Folder
We all know that our documents are important.  So are our photos and music files.  We save all of these files into folders, and then locate them afterwards and double-click on them to open them.  But there are many files that are important to us that can’t be saved into folders, and then searched for and double-clicked later on.  These files certainly contain important information that we need, but are often created internally by an application, and saved wherever that application feels is appropriate.
A good example of this is the “PST” file that Outlook creates for us and uses to store all our emails, contacts, appointments and so forth.  Another example would be the collection of Bookmarks that Firefox stores on your behalf.
And yet another example would be the customized settings and configuration files of our all our software.  Granted, most Windows programs store their configuration in the Registry, but there are still many programs that use configuration files to store their settings.
Imagine if you lost all of the above files!  And yet, when people are backing up their computers, they typically only back up the files they know about – those that are stored in the “My Documents” folder, etc.  If they had a hard disk failure or their computer was lost or stolen, their backup files would not include some of the most vital files they owned.  Also, when migrating to a new computer, it’s vital to ensure that these files make the journey.
It can be a very useful idea to create yourself a folder to store all your “settings” – files that are important to you but which you never actually search for by name and double-click on to open them.  Otherwise, next time you go to set up a new computer just the way you want it, you’ll need to spend hours recreating the configuration of your previous computer!
So how to we get our important files into this folder?  Well, we have a few options:
  • Some programs (such as Outlook and its PST files) allow you to place these files wherever you want.  If you delve into the program’s options, you will find a setting somewhere that controls the location of the important settings files (or “personal storage” – PST – when it comes to Outlook)
  • Some programs do not allow you to change such locations in any easy way, but if you get into the Registry, you can sometimes find a registry key that refers to the location of the file(s).  Simply move the file into your Settings folder and adjust the registry key to refer to the new location.
  • Some programs stubbornly refuse to allow their settings files to be placed anywhere other then where they stipulate.  When faced with programs like these, you have three choices:  (1) You can ignore those files, (2) You can copy the files into your Settings folder (let’s face it – settings don’t change very often), or (3) you can use synchronization software, such as the Windows Briefcase, to make synchronized copies of all your files in your Settings folder.  All you then have to do is to remember to run your sync software periodically (perhaps just before you run your backup software!).
There are some other things you may decide to locate inside this new “Settings” folder:
  • Exports of registry keys (from the many applications that store their configurations in the Registry).  This is useful for backup purposes or for migrating to a new computer
  • Notes you’ve made about all the specific customizations you have made to a particular piece of software (so that you’ll know how to do it all again on your next computer)
  • Shortcuts to webpages that detail how to tweak certain aspects of your operating system or applications so they are just the way you like them (such as how to remove the words “Shortcut to” from the beginning of newly created shortcuts).  In other words, you’d want to create shortcuts to half the pages on the How-To Geek website!
Here’s an example of a “Settings” folder:

Windows Features that Help with Organization

This section details some of the features of Microsoft Windows that are a boon to anyone hoping to stay optimally organized.
Tip #35.  Use the “Favorite Links” Area to Access Oft-Used Folders
Once you’ve created your great new filing system, work out which folders you access most regularly, or which serve as great starting points for locating the rest of the files in your folder structure, and then put links to those folders in your “Favorite Links” area of the left-hand side of the Windows Explorer window (simply called “Favorites” in Windows 7):
Some ideas for folders you might want to add there include:
  • Your “Inbox” folder (or whatever you’ve called it) – most important!
  • The base of your filing structure (e.g. C:\Files)
  • A folder containing shortcuts to often-accessed folders on other computers around the network (shown above as Network Folders)
  • A folder containing shortcuts to your current projects (unless that folder is in your “Inbox” folder)
Getting folders into this area is very simple – just locate the folder you’re interested in and drag it there!
Tip #36.  Customize the Places Bar in the File/Open and File/Save Boxes
Consider the screenshot below:
The highlighted icons (collectively known as the “Places Bar”) can be customized to refer to any folder location you want, allowing instant access to any part of your organizational structure.
Note:  These File/Open and File/Save boxes have been superseded by new versions that use the Windows Vista/Windows 7 “Favorite Links”, but the older versions (shown above) are still used by a surprisingly large number of applications.
The easiest way to customize these icons is to use the Group Policy Editor, but not everyone has access to this program.  If you do, open it up and navigate to:
User Configuration > Administrative Templates > Windows Components > Windows Explorer > Common Open File Dialog
If you don’t have access to the Group Policy Editor, then you’ll need to get into the Registry.  Navigate to:
HKEY_CURRENT_USER \ Software \ Microsoft  \ Windows \ CurrentVersion \ Policies \ comdlg32 \ Placesbar
It should then be easy to make the desired changes.  Log off and log on again to allow the changes to take effect.
Tip #37.  Use the Quick Launch Bar as a Application and File Launcher
That Quick Launch bar (to the right of the Start button) is a lot more useful than people give it credit for.  Most people simply have half a dozen icons in it, and use it to start just those programs.  But it can actually be used to instantly access just about anything in your filing system:
Tip #38.  Put a Shortcut to Windows Explorer into Your Quick Launch Bar
This is only necessary in Windows Vista and Windows XP.  The Microsoft boffins finally got wise and added it to the Windows 7 Superbar by default.
Windows Explorer – the program used for managing your files and folders – is one of the most useful programs in Windows.  Anyone who considers themselves serious about being organized needs instant access to this program at any time.  A great place to create a shortcut to this program is in the Windows XP and Windows Vista “Quick Launch” bar:
To get it there, locate it in your Start Menu (usually under “Accessories”) and then right-drag it down into your Quick Launch bar (and create a copy).
Tip #39.  Customize the Starting Folder for Your Windows 7 Explorer Superbar Icon
If you’re on Windows 7, your Superbar will include a Windows Explorer icon.  Clicking on the icon will launch Windows Explorer (of course), and will start you off in your “Libraries” folder.  Libraries may be fine as a starting point, but if you have created yourself an “Inbox” folder, then it would probably make more sense to start off in this folder every time you launch Windows Explorer.
To change this default/starting folder location, then first right-click the Explorer icon in the Superbar, and then right-click Properties:
Then, in Target field of the Windows Explorer Properties box that appears, type %windir%\explorer.exe followed by the path of the folder you wish to start in.  For example:
%windir%\explorer.exe C:\Files
If that folder happened to be on the Desktop (and called, say, “Inbox”), then you would use the following cleverness:
%windir%\explorer.exe shell:desktop\Inbox
Then click OK and test it out.
Tip #40.  Ummmmm….
No, that’s it.  I can’t think of another one.  That’s all of the tips I can come up with.  I only created this one because 40 is such a nice round number…

Case Study – An Organized PC

To finish off the article, I have included a few screenshots of my (main) computer (running Vista).  The aim here is twofold:
  1. To give you a sense of what it looks like when the above, sometimes abstract, tips are applied to a real-life computer, and
  2. To offer some ideas about folders and structure that you may want to steal to use on your own PC.
Let’s start with the C: drive itself.  Very minimal.  All my files are contained within C:\Files.  I’ll confine the rest of the case study to this folder:
That folder contains the following:

  • Mark: My personal files
  • VC: My business (Virtual Creations, Australia)
  • Others contains files created by friends and family
  • Data contains files from the rest of the world (can be thought of as “public” files, usually downloaded from the Net)
  • Settings is described above in tip #34
The Data folder contains the following sub-folders:
  • Audio:  Radio plays, audio books, podcasts, etc
  • Development:  Programmer and developer resources, sample source code, etc (see below)
  • Humour:  Jokes, funnies (those emails that we all receive)
  • Movies:  Downloaded and ripped movies (all legal, of course!), their scripts, DVD covers, etc.
  • Music:  (see below)
  • Setups:  Installation files for software (explained in full in tip #33)
  • System:  (see below)
  • TV:  Downloaded TV shows
  • Writings:  Books, instruction manuals, etc (see below)
The Music folder contains the following sub-folders:

  • Album covers:  JPEG scans
  • Guitar tabs:  Text files of guitar sheet music
  • Lists:  e.g. “Top 1000 songs of all time”
  • Lyrics:  Text files
  • MIDI:  Electronic music files
  • MP3 (representing 99% of the Music folder):  MP3s, either ripped from CDs or downloaded, sorted by artist/album name
  • Music Video:  Video clips
  • Sheet Music:  usually PDFs
The Data\Writings folder contains the following sub-folders:
(all pretty self-explanatory)
The Data\Development folder contains the following sub-folders:
Again, all pretty self-explanatory (if you’re a geek)
The Data\System folder contains the following sub-folders:
These are usually themes, plug-ins and other downloadable program-specific resources.
The Mark folder contains the following sub-folders:
  • From Others:  Usually letters that other people (friends, family, etc) have written to me
  • For Others:  Letters and other things I have created for other people
  • Green BookNone of your business
  • Playlists:  M3U files that I have compiled of my favorite songs (plus one M3U playlist file for every album I own)
  • Writing:  Fiction, philosophy and other musings of mine
  • Mark Docs:  Shortcut to C:\Users\Mark
  • Settings:  Shortcut to C:\Files\Settings\Mark
The Others folder contains the following sub-folders:
The VC (Virtual Creations, my business – I develop websites) folder contains the following sub-folders:
And again, all of those are pretty self-explanatory.

Conclusion

These tips have saved my sanity and helped keep me a productive geek, but what about you? What tips and tricks do you have to keep your files organized?  Please share them with us in the comments.  Come on, don’t be shy…