Software development

30 12, 2019

Traditional Education – Still the Way to Go?

By |2019-12-30T19:39:16+00:00December 30th, 2019|Everyday Life, Lifestyle, Programming, Software development|0 Comments

A friend of mine, who's a mechanical engineer, plans to become an iOS developer. He was looking for "the best college" that would prepare him for the career switch. When I told him he could learn all the necessary skills online, he looked at me like I had two heads. Some may still think that attending a college is the only way to become successful. In this rapidly changing world, this couldn't be further from the truth. More often than not, all we get from conventional education is overpriced, stale content. Online teaching platforms provide up-to-date classes for a [...]

26 12, 2019

A Quick and Painless Intro to Swift 5 Property Wrappers

By |2019-12-27T10:52:58+00:00December 26th, 2019|iOS Programming, Software development, Swift, Swift 5, Swift Programming|0 Comments

A property wrapper lets us define property access patterns that can be applied repeatedly. What does that mean? In essence, the property wrapper is a data structure that provides controlled access to the property that uses it as a wrapper. In this article, I show you how to define a property wrapper and how to apply it. I'm also going to show you a practical example of using property wrappers. Alright, let's dig in! To define the most basic property wrapper, create a structure, class or enumeration and mark it using the @propertyWrapper attribute: @propertyWrapper struct Box { } [...]

29 07, 2019

Can Arrows Cause Cognitive Overload?

By |2019-07-29T16:23:28+00:00July 29th, 2019|clean code, Programming, Software development|0 Comments

In programming, deep nesting is a problem known as the Arrow Anti-Pattern. The name comes from the shape of nested if statements: if ...:     if ...:         if ...             if ...                 if ...                     # code                 else:             else:         else:     else: else: Normally, you shouldn’t go beyond two levels of nesting. Otherwise, your code becomes overly complex and hard to understand. Boolean operators allow us to combine multiple conditional expressions without relying on nested if statements. I talk about the Arrow Anti-pattern and further, programming related topics in my recently published book The Non-Programmer's Programming Book: Programming Foundations for Absolute Beginners. Learn to [...]

29 07, 2019

SCRUM: Framework or Methodology?

By |2019-07-29T16:08:30+00:00July 29th, 2019|Agile, Scrum, Software development|0 Comments

Per definition, Scrum is an Agile framework. Some see it as a methodology, though. Now, who’s right? It really depends on how you look at it. First, let’s try to clarify the difference between framework and methodology. In this context, a framework is a loose guideline, that defines the main structure of software development. However, it doesn’t dictate how to do certain things. A framework is not a step-by-step recipe, in that it doesn’t tell us what tools and processes to rely on. Given a framework, we can define the way we want to achieve our goals. Now we’ve [...]

16 07, 2019

Fresh and Hot! The Non-Programmer’s Programming Book

By |2019-07-16T11:27:36+00:00July 16th, 2019|Beginners, book, OOP, Programming, Python, Software development|0 Comments

I published my latest book, "The Non-Programmer's Programming Book." You can check it out here: https://www.amazon.com/dp/B07QDVDW4S Would you like to start a career in software development? Have you been playing with the idea of learning programming? Have you considered developing apps or games, but you’re not sure where to start? This book is an excellent starting point in your journey to becoming a paid programmer. Besides learning to program, I provide insights and best practices that other classes and books won’t teach you.  We literally start from scratch — you need no prior programming experience. All you need to [...]

16 07, 2019

By |2019-07-16T11:15:24+00:00July 16th, 2019|OOD, Software development, Udemy, UML, Video Course|0 Comments

I want to share my thoughts on learning and using UML. The latest UML 2.5.1 specification is 754 pages long. I firmly believe that nobody on this planet needs to know all that stuff to design software systems efficiently. UML is a perfect candidate for the 80/20 rule (aka Pareto law): 20% UML is sufficient in 80% of the cases. Knowing *some UML* is better than getting lost in the nitty-gritty details of visual artifacts. Going down the UML rabbit hole can easily lead to unnecessary complications and to what I fear the most: "analysis paralysis." In my "UML and Object-Oriented [...]

10 04, 2019

Pre-order Now: “Programming Foundations for Absolute Beginners”

By |2019-06-02T09:52:41+00:00April 10th, 2019|Beginners, Programming, Python, Software development|0 Comments

My upcoming book "Programming Foundations for Absolute Beginners" delves into the fundamental concepts of programming. You'll work through simple Python projects to solidify the core knowledge to begin programming in any language. Available for pre-order here: https://lnkd.in/gTGJJ8u

21 02, 2019

Why Protecting Your Smartphone Is More Important Than Ever?

By |2019-02-21T13:36:46+00:00February 21st, 2019|iOS Programming, LinkedIn Learning, Lynda, security, Software development, Swift, Video Course|0 Comments

The rate of occurring data breaches is on the rise - we hear about hacked accounts, leaked intimate conversations and compromised payment information almost every day. Mobile devices are the most vulnerable. The recent scandal over the leaked selfies of Amazon CEO Jeff Bezos shows that everybody's at risk. Thus, protecting your mobile devices and all the sensitive information is crucial. In my course iOS Development: Security I show you how to secure your device and prevent data leakage with and without coding. We’ll go over fundamental security concepts, including secure boot, sandboxing, and secure networking. I explain how [...]

14 09, 2018

Avoid Humiliation During Job Interviews or Design Meetings

By |2018-09-14T08:46:43+00:00September 14th, 2018|Object-Oriented Design, OOD, Software development, Udemy, UML, Video Course|0 Comments

Study Object-Oriented Design and learn how to draw UML diagrams to avoid humiliation during job interviews or design meetings. Explore the fundamental concepts behind modern, object-oriented software design best practices. Learn how to work with UML to approach software development more efficiently. Throughout the course, we go through several examples to familiarize yourself with software design and UML. Plus, I walk you through a case study to review all the steps of designing a real software system from start to finish. Click here to enroll for just $9.99 Enroll for just $9.99 Topics include: Understanding software development methodologies Choosing [...]

9 08, 2018

New Lynda Course “iOS Development: Architecture”

By |2018-08-09T19:30:08+00:00August 9th, 2018|course, Design, iOS Programming, LinkedIn Learning, Lynda, OOP, Software development, Swift, Swift 4, Swift Programming, UML, Video Course|0 Comments

Woohoo! My latest course "iOS Development: Architecture" is now available on LinkedIn Learning: https://www.linkedin.com/learning/ios-development-architecture   and on Lynda.com: https://www.lynda.com/iOS-tutorials/iOS-Development-Architecture/699340-2.html