Yet another month in IoT

2019-08-11

Yet another month, well almost a month and a half, has passed since I started my on-the-job training. I must admit that I have been reading and writing a lot text during my trainee hours. So much so, that I have not had the time nor energy to dedicate time for blog posts as frequently as before. Thus, there was this little “sabbatical” from blogging during the month of July. Well now I’m back and I have a major announcement to make!

A month in IoT

2019-06-29

It has been over a month since my last post regarding my DevSecOps -training, thus it is time to bring you up the speed on what has been going on. As the title suggested it has to do with the Internet of things (IoT)!

Global DevOps Bootcamp 2019

2019-06-18

I had huge honor to attend to Global DevOps Bootcamp 2019 which was hosted by Zure at their home offices in the heart of Helsinki. This is equal parts my trip journal and my learning diary of the bootcamp. Hop on and let me tell you about my experiences of the meetup!

DevSecOps weekly, eighth issue, part 2

2019-05-26

This is a continuation from my previous post, where I turned simple problem description in to a conceptual model of a database. On this post I will go through the steps on how to turn it to a full-blown schema of a database!

DevSecOps weekly, eighth issue, part 1

2019-05-24

This is the final week before my on-the-job learning period begins. I have strongly focused my last couple of weeks on what kind of knowhow I need in order to operate with best of my knowledge at the job. These include finishing “Programming with Java I”-course and started working on “Introductory to Databases”-course. On this blog post, I want to focus on how a conceptual model and domain model can be utilized when designing databases.

DevSecOps weekly, seventh issue

2019-05-18

This was the week when last of the User Experience Design lectures were held, thus I can bring you a brief overview of the subject and gather all what I have learned into a blog post. I would like to thank Telia’s Design Leader Pekka Jääskeläinen for excellent presentations on the subject. Not only because it was such an eye opener for me, but also because he really drove home the balance between what the users want and what the business expects.

DevSecOps weekly, sixth issue

2019-05-12

There has been a huge focus on testing aspect of software development during this week at my training. I learned about different testing types and wrote a simple testing suite using Robot Framework.

DevSecOps weekly, fifth issue

2019-05-05

This time I bring a quick update about what is going on, since this week has been really low on lectures and more about self studies, and of course Vappu, or May Day.

DevSecOps weekly, fourth issue

2019-04-28

So far I have written a bunch about the tools of the trade when it comes to DevSecOps, but now I feel that it is time to tackle on the ideology itself and find out why only the tools are not enough in order for DevSecOps to work. After all, DevSecOps is not just about the tools, but rather a cultural movement. I’ll add my own thoughts from a viewpoint of an outsider, since I have no real work experience in software development, who has managed a team and understand why it is important to create a culture to a workplace. I also feel that this topic is important, since now that after almost a month of studies are behind me, we are starting our little projects at the training, but more on later posts.

DevSecOps weekly, third issue

2019-04-19

Third week was when the things got really interesting and I started really reflecting upon what I have experienced. Highlights of the week include hunt for on-the-job training position, playing with Lego(!), learning about user experience design. Cloud services lectures also continued this week. Finally I also started a course about web application security, which proved to be much more interesting than I thought.

DevSecOps weekly, second issue

2019-04-14

Two weeks of studies and the results are in. I have crafted my path and now it is time to start following through the plan. This week I have learned more on how to think like a programmer, returned to study more mathematics, so that I can pass he entrance exams. This week on the lectures I got insight on Cloud Services and Service Design.

DevSecOps weekly, first issue

2019-04-07

First week of studies as a DevSecOps-developer are behind me. Since I was accepted to my new seat of learning, I really felt that I should use this blog to write about my experiences. In fact it was highly encourage on by the coordinating teacher so start some sort of blog or learning diary. Thus from now on I will be posting these DevSecOps weeklies to summarize what I have gathered to my learning diary during the week. So I will be kind of doing both. My method of writing a learning diary is based on questions stated in this article (Warning: Finnish content). However I have translated them freely so that I can use them here in my blog.

And now for something completely different

2019-03-24

Last time I wrote about my experiences at university of applied sciences and how they did an assessment on my programming abilities. Today I’m here to write about other awesome challenges that are waiting for me at the beginning of next month. This, plus info about new language that I’m learning, on this post.

Programming assessment at university of applied sciences

2019-03-16

This week I attended to my local University of Applied Sciences programming competence assessment. The assessment came in to parts; first, I filled a self-evaluation form to give information about me, my prior programming knowledge and of course important links, such as my Github-page. Second part was to participate in a programming examination at the campus’s computer lab. After the examination, lecturers reviewed and gave feedback based on the results. Here is a documentation of that day, and what I managed to produce during the five hours allocated to the examination.

Exponents raised to the power of C++^2

2019-03-10

Continuing from the last post, here is a overview of rest of the the properties that exponents have to offer. Before going on any further I want to start by making the terminology clear for the rest of this blog post. Base is the value that is multiplied by itself as many times as the exponent declares, in the case of 5^3, the number 5 is the base and 3 is the exponent. The result of this expression is called either product, or power. I also would like to point out that the code examples here are, well examples, they represent the raw idea on how to perform simplified calculations, nothing more.

Exponents raised to the power of C++

2019-03-06

My studies at Khan Academy have been chugging along nicely and the application deadlines for joint application for universities and universities of applied sciences is closing in. I feeling ready to take the next step on my journey and hopefully can perform well on the entrance examinations. When studying algebra I stumbled upon exponents, and more closely, on their rules and properties I started to wonder how C++ handles them and if there are some exceptions that programmers should notice when working with them.

Part 2/2: Performing prime factorization and finding least common multiple in C++

2019-01-30

This is a continuation of Part 1/2: Performing prime factorization and finding least common multiple in C++. On this post I will go through least common multiple and how to implement it to the class I created on last post.

Part 1/2: Performing prime factorization and finding least common multiple in C++

2019-01-28

Prime factorization and least common multiples are two mathematical concepts, which each has it own applications, meaning that they can be used to solve certain real life problems as well as serve as algorithm in a computer program. Both of them are their own ideas, but they are linked and that is why I have created a class that can handle both of them! Let’s start by prime factorization and then move to least common multiple in part two.

Expanded form and expanded notation using C++

2019-01-25

Last time I ended the post with little teaser about expanded notation, which is basically just way of presenting numbers as their place value so instead of writing 2,541, the place value of each digit is expressed as an addition: 2000 + 500 + 40 + 1, or alternatively (2 1,000) + (5 100) + (4 10) + (1 1). The former is called expanded form while the latter is expanded notation. Using either of these methods the true place value of each digit is portrayed.

C++ and place value

2019-01-24

In reference to my last post, about learning more mathematics in becoming better programmer. I started my first mathematical module at Khan Academy, which was about arithmetic properties. It’s first topic was place value in decimal system.

Mathematics and C++

2019-01-23

About month ago I had finished a massive documentation of the final project of my C++ course. It was a huge effort on my part and I felt that I needed a little break from blogging and documenting, to let my creative writing chops get a rest for awhile. So I decided to concentrate on something else for the start of the year 2019. Sort of like a New Year's resolution. Here is an update what I have been doing since start of January.

What was going on all of December?

2018-12-30

Time has passed since last update to this blog. I completed the C++ Tutorial for Complete Beginners course at the beginning of December. Rest of the month I have been working on programming and improving the final project of the course known as The Particle Fire Simulation and made my own version The Particle Fire Simulation Revision of the project, documented the whole process to a massive wiki with some 40 pages of content and even installed Microsoft’s Visual Studio. About all this and much more on this blog post!

Monthly recap - November

2018-11-30

There have been a lot of things going on, new things learned and blog post written. Because of that I decided I should also make a little recap of things that I have been working on, what I have learned and what they made me think. What better time than now, when my first full calendar month of blogging is about to be behind me. Granted I will also include the half month of October in the recap. I also will talk about what I have been doing this week and what’s in the future for me. But before we go there lets start all the way from beginning.

High-level concept, a post about abstraction and encapsulation

2018-11-24

Last blog post included something new that I haven’t really touched upon, when talking about classes or object orientation in general and that is abstraction (while mentioning it before, I haven’t wrote a blog post touching the subject) and encapsulation. Encapsulation plays a huge part in limiting access to certain parts of the code, which is the basis of object oriented programming. And to recap, abstraction means providing the user with minimal amount of background details and hiding all the rest so that the user cannot access them later. User in this case means another programmer that may start programming with classes another one have created OR when programmer starts using [libraries], such as Boost or SDL. User of compiled and ready to use program is end-user in this case.

You have just inherited a large sum of blog postage.

2018-11-21

Last time I wrote about something that was very tricky for me to understand in the past which was pointers and memory. Continuation on the path to becoming more fluent in object orientation programming my next stumbling point was inheritance in C++. Making sure that the history doesn’t start repeating itself, this time I wanted to make sure that I understand what is going on and so. So like previously with pointers and memory, I started by reading as much as possible about inheritance.

Memories about pointers, or was it pointers about memory?

2018-11-16

I’m dwelling deeper and deeper to territory that was previously pretty mysterious to me and made me sometimes wonder what was going on with the program. Most of time when doing exercises that needed to be solved using C++ pointers and memory management I was mostly trying to brute force myself through and Google the compiler errors as they came, without truly understanding what was going on.

Constructing and destructing

2018-11-11

Wow! Almost didn’t make a single post this week, since it has been a blast and I have been doing much stuff in my private life as well as coding. I have learned so much during the week and because I didn’t want to break the good learning streak I did not have the time to post the usual two posts per week which I have been targeting for.

Object-Oriented Programming

2018-11-03

My last blog post was mostly about my change of tools and in this post I’m going to describe more closely my learning progress so far. Last time I wrote about loops, which are very important part of programming and about my new findings such as setprecision(). This time I’m mostly writing about Object-Oriented Programming, which I have been very interested since I heard about it back in the day and learned what it really meant.

Out with the old, in with the new

2018-10-31

When I started relearning the basics of C++ I used Arch Linux through Virtualbox. I also used that platform to create this site, post blog updates and maintain my GitHub-page. Everything went really smooth, but I still thought that with the rolling updates that Arch Linux provides, my system needs constant maintenance just to make sure, that everything continues to run smoothly.

Keeping on keeping on

2018-10-26

Update Oct 27, 2018: Noticed that I got loops bit mixed up during site building and showed picture claiming, that do while and for are almost the same. It is fixed now on this blog post.

New beginnings

2018-10-22

As stated in my previous blog post I have most experience in software development using C++ -programming language, meaning I still possess some kind of basic understanding of language in question. Because of that I decided that should start my journey from the basics of C++ as a refresher.

My first post!

2018-10-19

17th of October marks the day when my employment contract in a contact center ended and I started a new, or rather continued, my career path towards mastering the art of programming.