We are all used to casting from one type to another in different languages that we use. In all C-like languages (C,C++,C#,Java etc) we use this simple format.
CustomObject a = new CustomObject();
object b = (object)a;
Okay I am using an overly trivial example here but I think you get the point.
Now imagine the following example. We are given an enumerable form of data through the network, in JSON format let’s say, We are aware that this enumerable has different forms of data, some are objects, some are strings, some are ints etc. Bear with me here, I know this is a crazy scenario which has no meaning but let’s suspend our disbelief for a moment and go through with it. So let’s say we have the following Enumerable
Continue reading C# Typecasting: Use ‘as’ instead of the normal Cast
We all know what type casting is. It’s converting from one type to the other. But exactly is implicit type casting?
Well implicit type casting is a feature of C# that helps you convert instances of custom Classes you created from one to another.
Continue reading Custom Implicit and Explicit type conversions in C#
So we continue with our basic setup for our Raspberry Pi. We need to add ability to connect to Wifi networks and in order to not occupy a screen every time we want to work on our Pi we will also setup a way to have a remote connection on our Pi.
If you are using Raspberry Pi one or two then you will need a Wifi Dongle for this. The one I bought and works out of the box is this one. It’s cheap, works out of the box, but it’s from china. So depending on your location it might take some time to arrive, so chose what you please 🙂
Continue reading RPI Car Computer Part 3: Wifi setup and Remote Connection from Windows
Since our Raspberry Pi is now operational let’s move on to the next part. In this part of the tutorial we will setup our Pi to always boot to the Linux GUI (boot to desktop) and expand our Operating System to utilize the full storage of the SD card we are using.
Continue reading RPi Car Computer Part 2: Boot to Desktop, Expand root and Change Password
So many times in movies and TV shows we have seen computers in cars that had so many fantastic features. From KITT in Knight Rider up to James Bond movies we have seen some great computers in cars and it was getting us all excited to what will come in the future. So here in 2016, computers are still a luxury in cars and still don’t offer everything that we dreamed of, given the technology we have.
Continue reading Raspberry Pi Car Computer Part 1: Initial Setup and basic parts
Jesus and Satan have an argument as to who is the better programmer. This goes on for a few hours until they come to an agreement to hold a contest with God as the judge. They set themselves before their computers and begin. They type furiously, lines of code streaming up the screen, for several hours straight. Continue reading Jesus vs Satan: Who is the better programmer?
There was once a COBOL programmer in the mid to late 1990s. For the sake of this story, we’ll call him Jack. After years of being taken for granted and treated as a technological dinosaur by all the UNIX programmers and Client/Server programmers and website developers, Jack was finally getting some respect. He’d become a private consultant specializing in Year 2000 conversions. He was working short-term assignments for prestige companies, traveling all over the world on different assignments, and making more money than he’d ever dreamed of.
Continue reading As useful as a COBOL programmer
All languages, or at least most, have some way of passing a value by reference. When we wish to return more than one values from a method or simply if we want to use the classic value swap paradigm then we need to pass values by reference to our method. C has pointers (which in fact you are still passing the pointer to your method by value, but in fact that pointer has a reference to the variable you want to change) Visual basic has the ByRef argument and many other languages have their own way of doing this.
Continue reading Out vs Ref in C#
A huge pain in the arse for most developers is the need to null check everything before starting to use it. Microsoft has introduced null operators in previous versions of C# and upgraded them in C# 6.0 but still, we can and we should avoid them.
How? Well by avoiding nulls altogether.
Can we do that? Of course we can.
Let’s see how
Continue reading Checking for nulls? Not anymore
For some time now developers wanted to catch multiple exceptions in a single Catch statement in order to not repeat their code in multiple catch statements. This was not available in previous releases of C# and developers used different workarounds to achieve it.
Continue reading Capturing Multiple Exceptions in a single Catch statement in C# 6