Search

Samstag, 20. Juni 2020

My journey through design patterns in Java!

As Uncle Bob says, if you call yourself a professional programmer you should "educate yourself and teach others".

I add only to this statement following: so that new generation of developers would be aware of advantages and disadvantages and would be able to make rational decisions for their software projects.

What book i used for my design patterns journey:



This book definitely is "easy ride", even code which is provided by that book is easy to read and to understand!  (I speak from view of  seasoned developer with many years o experience)

So i refreshed my knowledge about design patterns in Java , what about teaching other people ?

Here you have completely  free workshop on youtube where i explain and show in code the solutions for each of the design patterns explained in the book!



If you know c++  thats cool and great!!
Do you want to get even deeper understanding, then i recommend to read this book !



Where i go from here?

Well now, i  am clearly understand most common design patterns,

Here is my list of actual stuff in making:

1. I have one big project to implement which is a game in Unity3D 
2. Help my clients with their projects 
3. And i 100 % definitely  try to read another great book about Java, which is Effective Java by Joshua Bloch !
4. Create another youtube series: "Why the whiteboard tech interviews should be deprecated and damaging the industry overall" and provide my own solutions to "Cracking the coding interview" book

In future youtube series i would tell the world that:

1) Writing programming solutions on whiteboard is stupid and not applicable in real software engineering world, yes we use whiteboard but not for the writing code rather most time for explaining concepts and ideas, only "stupid" tech leads or crazy developers do that and only because that they brain full of "garbage" and to show off, nobody take them seriously or understand well, but they most times likely responsible for project delays and bad code......

2) Your company is not google!!
Repeat after me: Your company is not GOOGLE! So stop to pretend to be a one!


3) Some senior developers have no clue what people learn in universities when they study computer science or related to it degrees, they claim university fresher should know that and that, but in reality many universities are far behind the industry in some cases like 10 years behind the current industry standards! I know it from the first hand, because i study computer science (part time)

4) Nowadays we have companies and people who write "stupid books" about what a good candidate should know about the programming language and the frameworks, why i call it stupid ?

Because in university , there no time to learn so much amount of knowledge what most software company wants!
Those guides books like the book of author Gayle Laakmann Mcdowell will be deprecated, candidates who reading such books just losing theirs valuable time instead of doing some real work of study and implementing the knowledge into the field !

So we developers with experience should refrain from such bad practices and do more homework ! I even think of putting a clear oath that i as programmer never use whiteboard to interview the candidate for the assessment of his or her knowledge and i would assets only on actual learning skill of the candidate trough pair programming interview.

Some of the developers maybe asking themselves, we have such big shortage of developers how we can close the gap without loosing the productivity? Each new developer must be introduced to the project and it takes far too long to do that.


I know the answer:  provide good online tutorials , during the covid19 crisis you have lots a free time and by doing that you will teach many, many  people and gain respect from your fellow developers and don't be afraid if you do mistakes, mistakes are natural with all what we as humans do.

When you actually interview people do it in pair programming style, give them a task and watch how they solve it and help them if they stuck, if a candidate can't write good quality code, then its obvious that such candidate would  be bad match for company , but if you see that candidate quick learner and that he just need small push ups to reach the goal, then you have the right candidate and only then and here i strongly repeat myself and only then,  allow HR to do a personality and cultural fit tests.
I tried this approach and its 100% perfect that such approach of hiring candidates produce great results!

Ok, enough ranting ;)
We should think positively and do anything in our power to close the developers shortage gap, i personally think and plan to give lectures about software industry in universities around 2025 , so the students of the future would basically started to learn about the industry sooner that it was in the past and i encourage any well experienced developer to do that ;)

Keine Kommentare:

Kommentar veröffentlichen

All comments are pre moderated be polite and respectful!

Blog-Archiv

Blog readers favorites