Solo Learn Learn C#


I work full-time. It is not a programming-related job, it’s completely different business. And from time to time it requires from me to travel, not much but still… During my last travel when I was waiting at the airport I figured out that I’ll check what android apps I would find if I try to search for “C#”. And indeed I’ve found something worthwhile to try it out.

Learn C# by Solo Learn is an app that delivers a series of C# tutorials. Topics are divided into sections, each section provides explanation of current topic, quick questions immediately after the explanation and a quiz after each bigger portion of information. I would say that it was quite fun to go through them all.

The app gives another utility which I find the most value of the app – Code Playground. It gives user a possibility to test and modify code that appeared in tutorial questions, create your own code or play around with tons of examples provided by community. Drawback of this feature is the fact that it only works online.

What’s additional fun is that you get a certificate after finishing all tutorials. That’s a quite  nice accent to end the tutorials.

All in all that’s a well-organised application that gives a basic background to C# and some moments of fun. Kudos!

SoloLearn on Facebook


Dictionaries or variable name stored in another variable


During my high school/university I tried a bit of HTML/PHP. Topic of my BE thesis was more or less this: “On-line journey planer written in PHP with use of MySQL database.” It was not a rocket science at all. I just used a slice of map of my hometown and (let say) manually converted it to a graph. I placed a node on each intersection and link between nodes represented streets from the map. Coordinates of nodes and links between them were stored in two tables. That allowed me to use Dijkstra’s algorithm to calculate the shortest path between selected nodes. From that time I remember that PHP allowed user to store variable name in a variable, as code below illustrates:

The above code would result with displaying value of $nested_variable. I am not sure if this is still valid for current version of PHP but it worked in PHP4.x.

So the feature presented above might be quite useful. But C# doesn’t give that possibility. However, there is a mechanism that can be utilised to achieve the same goal – dictionary. It can be compared to a 1D table but its advantage is that you can use strings as an index. So, you store your variable name in another variable and then you refer to your dictionary with this variable as an index. Example is below:

The solution above is a bit more complicated than PHP, but I think if you use it to a bigger scope of variables it’s organised in a much more orderly manner.

So that’s it for today. For those of you who master Polish language I give a link to my thesis mentioned at the beginning of this post. Enjoy!

BE paper (*.PDF)

Quadric equation solver


It’s time to publish my first application developed in C#. It is simple windows form application to solve quadric equations and draw graph for function derived from an equation. I am aware of the fact that its utility is close to none. Paper and pencil are better tools to deal with that kind of equations. But, as I mentioned in my first post here I want to learn C#. So I figured out that writing such an application would be a good starting point.

Feel free to download and test it. I look forward to your comments and suggestions.

ClickOnce installer (*.ZIP)
Source code (*.ZIP)

Above, you’ll find links to packages with the application and source code (all files written in Visual Studio, the package includes project file).

What I’ve learned while writings this app? I guess the best answer to that question would be the foundations: basic syntax, idea of OOP (but I guess this program could be organised better in terms of its object-orientation), common windows forms and very brief introduction to graphics. I feel that’s a good starting point. More is to come.



So, here we are. I don’t know how has it happened that you’re here. But I guess it’s not the weirdest thing that you have encountered in your life. So let’s skip this question and let me enjoy the moment when somebody is reading this text.

You must be wondering who am I and what is the plan for this site. So, my name is Michał and I’m going to use this page to publish short texts mainly about my progress in learning how to develop Windows software. I am absolute rookie in this matter so don’t expect anything exciting or innovative. That’s not the purpose of this site. Its purpose is to keep track on my learning process.

My ultimate goal is to become a professional and successful developer. I will stick to C#/.net as I believe it is the most universal platform for Windows development.

As the world is not only zeros and ones, from time to time I will post something off main topic – mostly it’s going to be about what I read.

So, that’ll be it for today. I hope that you’ll visit this page again from time to time. If not, don’t worry it’ll be still nice archive for me.

Dust of our backs and onward!