Starting a project with Visual Studio is really easy process. There are just few steps, how many depends on the project template, to get going with new idea. You just go to File -> New -> Project…


then choose the best template that suites your needs, put desired name to it, click OK and you have got yourself a brand new project that is ready to use. You can start coding, right ? There’s always a but, isn’t it ? Yes you can, but you should bear in mind one thing, a project naming convention which determines your project directory tree and has an impact on a C# namespaces.

Examples are the best way to explain a point. I, myself, am a Web Developer so I’ll use a MVC project template as an instance. Let’s create a empty ASP.NET MVC 4 Web Application project and I’ll try to get you through my thinking.

Imagine that we are creating some kind of application for heater company. I’m a little bit cold right now so this is why heaters company, nothing in particular. Let’s say that the company name that we are doing the project for is HeatItUp. They want for themselves a nice website. We already know the first step, File -> New -> Project… and then we choose template and name, easy.


Although project is perfectly fine, in the end the Microsoft shiped the template, you should be aware of the way Visual Studio creates for you project directories. Notice the two input fields for Solution Name and Name (Project Name) in the New Project Window. After creating it like on the above screenshot you will end up with situation like that:



You can see that you’ve got Solution named HeatItUp and Web Application Project (website) named the same way. This is bad from the logic and good practices point of view. Logic, because project named like that does’t say anything to anyone besides you, the creator, about itself. Nobody knows if it is a WPF, WinForms, just a library or as it really is a Web Application unless they open it and look closely. Good practices because of the mentioned above and everything that corelates with it, generated directory tree and namespaces in your code. Little advice, always keep your namespaces clear and tidy because in large projects you can get really confused and even lost when they are poorly designed and when it comes to namespace refactoring…pure evil.

Ok, but even when I made a mistake with the Web Application project name I can easly change it in the Soultion Explorer. Yes, but don’t, because it changes nothing but the *.csproj file name, directories tree and namespaces are still the same. Obviously you can change folder names by yourslef and edit *.csproj file and change RootNamespace tag, refactor all the namespaces and it’s done. Sure, you can, but the price is really high, a lot of effort.


Solution to this issue is just to keep in mind these two input fileds on the New Project window while creating new project, Solution Name and a Name aka Project Name. Or you can do it my way, start with the Blank Soultion


and add systematically projects that you need, always thinking about others who will work, inspect and try to understand the project solution.


I’ve allways had problems with picture resizing. There are so many graphics processing programs, that it makes you feel a little bit confused, and you don’t know which one to use. Even when you find the one that suits you, it turns out to be so complicated, gives you so much possibilities and features that you actually have no idea what to click to achive simple tasks. You have to check in the manual, then watch some video tutorials, read few articles and after couple of hours you are ready to resize your images. Why ? Just why ? I don’t need them, I just want to resize my pictures, that’s it! I don’t want to learn whole colossal application and all its functionalities! Isn’t there a simpler solution ?

Yes there is! I present you Image Resizer for Windows. Great, simple and light tool that let’s you do excatly what you want to do, which is image resizing. The end :). Isn’t it perfect ? I cannot imagine something more simpler. ~One megabyte, one form, one function, one click. Great, just great.

Quick usage tutorial after installation:

  • select pictures (images) that you want to resize
  • click RMB (right mouse button) on selected picutre(s)
  • find ‘Resize pictures‘ in your context menu
  • select preferable size from the form checkboxes
  • click Resize
  • Voila

I think that the most important thing to bear in mind when shrinking (resizing) your images is to watch for Replace the originals option. You can really easily overwrite your originals with their smaller version and never get those big ones back. I strongly advice you to make a copy folder first, e.g.: ‘Small’ or ‘Medium’, copy all images there and then start experimenting on them. Easy.

As you all now I’ve recently started this blog. The form that I want it to be is still in progress. I’ve got a lot of ‘things’ to do in terms of adjusting and enhancing it. In general when it comes to changes in WordPress, it always involves PHP and obviously some WordPress stuff. I won’t reveal anything special here if I tell you that I’m not best when it comes to PHP or WordPress. That’s simply because I’m a .NET developer, so often I’m not familiar with some concepts or framework features that PHP or WordPress is providing. Thus, even if there are some neat functions, just under my nose, that are waiting to be used and I’m not even close to use them, please, forgive me.

But anyways, lately I was trying to share my post on Facebook. So I’ve clicked the Facebook Share button that was already there for me (thank you GoodSpace Theme) and a sharing screen appeared (or you have to log into your Facebook account and then Facebook Share screen appears). I was little bit disappointed when it turns out that the screen looks more or less like that:

Https Facebook Share Problem

There is nothing there, right ? You wrote like ~1000 words, put a lot of images in the post and all of the content is not showing as it suppose to. This problem could be caused by wrong address to your site (post in this case) that you have put to share. My problem was the https protocol that was inside my site address and which was causing this kind of behaviour. Facebook Scraper didn’t see anything, which is perfectly understandable because under address there’s nothing, blank page.


Solution for this problem was to get rid of https and put insted http protocol. In general you must be perfectly sure that you give Facebook Scraper the correct address to inspect and scrap out of. The best way to check if everything is as you plan it to be, is to use Open Graph Object Debugger e.g. this post looks like that. This tool not only shows you how things will look like after sharing but also let you know what are the possible issues, what info you should provide, what is the best resolution for images etc. Generally everything that you should know or be aware of when sharing content on Facebook. Of course just in a nut shell, because sharing with Facebook and Open Graph is a complicated topic.

When it comes to GoodSpace Theme, code responsible for creation of Facebook Share link is located in social-share.php file. The issue lies in this snipped of code:

I don’t know excatly why in $_SERVER array there is non-empty entry for HTTPS key, which indicates that we are using SSL on our site, because it should stay empty when you are making Facebook Share request from HTTP protocol e.g. from here. Someone have an idea why it is like that ?

For me it was easy choice, just to remove line responsible for that, put comment on it, or change it to HTTP because I’m not going to use HTTPS protocol on my blog posts, ever. Addresses are always going to start with http://

After that you can enjoy your quite finely composed Facebook Share link. Everything looks great. Your featured image, title of the post and a little bit of post content as well. Perfect, right ? Not quite. When you check your post (site) link in Open Graph Object Debugger you will see this kind of notification:

Open Graph Warning

Even though you have not explicitly specified what should be shared, Facebook Scraper is enough ‘inteligent’ to look for other, similar, relevant tags and takes information from them. Nevertheless, you should be aware of what excatly is going to be shared from your website. That is why you should add Facebook Open Graph tags to your website header, somewhere between these two <head></head>.

I don’t think that this code is really hard to understand. Idea is to add some <meta> tags that Facebook Scraper could recognise and you, as a developer or just author, were able to take control over what users will see after sharing your page on Facebook. Alhough, I would like to mention that function get_excerpt_by_id() is not mine, it was written by a guy named Withers Davis and I found it on his blog, here.

The final version of what is shown on user who shared a link from your page looks like this, compared to what it was at the beginning

Before and After on Timeline

As you can imagine I didn’t write this blog layout by myself. I could, but it would take me a lot of time that I didn’t want to spend on reinventing the wheel. There are people who do layouts professionally so why not choose something that they made ? Probably they are even good at what they do. That’s why I decided to use template, a GoodSpace theme. I bought it on ThemeForest, it’s nice place where you can find ready to use layouts e.g. for WordPress. I recommend.

Although it’s, simple, responsive and minimalistic, how I wanted it to be, some things are not as I planned.

  • LOGO
Logo before


Logo after


Obviously I had to get rid of the logo. Currently I don’t have my own so I just wanted to make it disapear. How to do that ? In the WordPress administrative  panel I clicked GoodSpace then Overall Elements and tried to remove default logo. Unfortunately there is no indicator if you want the logo to appear or not. You can provide your own and then it’s changes, but what if you don’t have one and you don’t want the default ? Not a clue..So I’ve changed source code


Simply remove line with default-logo.png and then move every aspect responsible for creating a logo, echo’ing stuff to the condition which indicates if we have specified a logo.

  • BLOG



After (don’t minde little changes)

Now it’s time to change general Blog display. I don’t like that there is  a ‘Read More’ caption and that user have to do another ‘click’ to enter for more details about some topic. Maybe in the past, when the Internet wasn’t so fast and there were limits it had sens to ‘cut’ whole message and let user decide if he wants to read it or not. Nowadays connections are so fast that you won’t even notice the little delay, counted in miliseconds, caused by a lot of data transferred from server to your browser. That’s why I choose to keep my posts in this ‘newspaper’ kind of way, just scroll to see more.

First we need to comment out two lines where ‘Read More’ link is added, and then make some more changes:

Starting from the top. Code between line 9 and 16 is basically taken from single.php file and enhanced a little bit to make a visible separator between posts. Like this:



Now we have to change the post content injector. Line 68 was responsible for that and it ‘cut’ post content with mb_substr function and show just the ‘thumbnail’ of the topic. But we want full version of the post and what’s more we want it to look the same way it looks when showed fully. The easiest way to do that is just to copy and paste code between line 74 and 79 which is the excaty copy of a code from single.php file. It gives you full post content thanks to the_content() method and styling thanks to <div’s> tags the content is in. At the very end we put comments on the line 85 that inserts ‘Read More’ link into the page.


Looks better ;]

This is going to be a series of ‘The best shortcuts’. As a first post of a series let’s think a little bit about genesis and true meaning of word ‘shortcut’.

When speaking about shortcuts, probably, everyone of you is thinking about some shorter path through woods, mountains or their way to work that will ease your journey. That’s perfectly correct, even the official dictionary definition says the same. In simple words it’s nothing more than doing something quicker, easier or with less effort.

What is really interesting about it, in some way brain-tickling-funny too, you don’t even think much about it when you decide to use the shortcut, you just do. It’s a proccess of trying to make some actions, you do on regular basies and that often are not plesent at all, less time consuming. In general it’s called optimization and you stumble upon it in each and every part of your life. For instance, earlier mentioned road to work, shopping or day planning. A part of our life are computers, whether you like it or not, that’s the truth, computers are everywhere. So, we can agree that we, people, use shortcuts (in other words we optimize) in our life all the time, right ? So why don’t we apply them into our e-lifes and make it easier !?

What ? Does ctrl + c & ctrl + v counts ? Of course it does, but that is only the beginning…

Shortcuts with WINDOWS SYMBOL

Active window movement. Really useful when you’ve got more than 1 screen (available in Windows higher than XP)

  • (windows symbol) + up arrow  = maximization of your active window
  • (windows symbol) + down arrow  = minimization of your active window
  • (windows symbol) + left arrow  = move your active window to the left (sticks window to left corner of the screen)
  • (windows symbol) + right arrow  = move your active window to the right (sticks windows to the right corner of the screen)


Opening application

  • (window symbol) + <digit> e.g. 1 or 5 = openning application corresponding to the place on your  task bar (counting from left side)



  • (windows symbol) + d = go to desktop
  • (windows symbol) + m = minizations of all windows (basically the same as previous one)


Run (opens every program that is in your PATH)

  • (windows symbol) + r = opens ‘run’ window
  • (windows symbol) + r and than type ‘calc’ = opens calculator in new window
  • (windows symbol) + r and than type ‘mspaint’ = opens paint in new window
  • (windows symbol) + r and than type ‘magnify’ = opens magnifying tool
  • (windows symbol) + r and than type ‘regedit’ = opens registry editor
  • (windows symbol) + r and than type ‘inetmgr’ = opens IIS manager
  • (windows symbol) + r and than type ‘cmd’ = opens command line



  • (windows symbol) + e = open explorer in new window (opens ‘MyComputer’)


Shortcuts within WINDOWS OS


  • ctrl + alt + delete = I don’t think I have to explain that
  • ctrl + shift + escape = task manager (faster than going ctrl + alt + del and than click on task manager)



  • alt + tab = switches to next | through working application(s) – click and hold alt key than click tab key to see the switching dialog and then keep clickicking tab key while holding alt key to switch to next application
  • shift + alt + tab = same as upper one but switching through application backwards
  • alt + F4 = closes application
  • (movie players) alt + enter = go to full screen
  • (image browsers) f11 = go to presentation mode (full screen mode with arrow navigation ability)


Files & Folders

  • ctrl + shift + n = creates a ‘New Folder’
  • F2 = change the active file or folder name
  • shift + delete = deletes file or folder omitting the bin
  • ctrl + a = selects all
  • alt + enter = opens properties window on selected file or folder