Educational materials for developers and designers

Alen IBRIC
8 min readApr 1, 2020

In order to further improve your knowledge and skills in your fields, additional effort is required. The Internet offers a wealth of useful information, but in order not to get lost in the sea of information, we have selected only the highest quality that will allow you to further develop in your areas.

You are presented with a list of materials from which you can learn and constantly improve your skills, whether you are beginner or already experienced developers or designers. Below is everything you need to get started learning new skills or refining those you have already acquired!

So let’s get down to the materials!

In what areas can you improve?

  • Frontend development
  • Backend development
  • Android development
  • iOS development
  • UX / UI design

Frontend development

In the area of frontend development, I would like to cite HTML / CSS and JavaScript related materials. To help you get around the material, they are organized by sources (books or websites).

What do I think a frontend developer should know?

  • Advanced knowledge of HTML5
  • Advanced knowledge of CSS3 and pre-processor stylesheet (eg SASS, SCSS…)
  • Good knowledge of Javascript and jQuery
  • Knowledge of versioning (git)
  • RWD — knowledge of responsive design concepts

Bonus points:

  • Knowledge of JS framework (Vue.js, Angular, ReactJS or others)
  • Knowledge of ARIA principles

Once you’ve mastered HTML and CSS, focus on Javascript. I advise that you first gain some knowledge of Javascript and continue learning some of the Javascript frameworks so that you do not have trouble understanding how JavaScript works.

I decided to “make your life easier” and highlight the materials with which you can start your HTML and CSS adventure.

Learning Sites (HTML / CSS)

The most useful website outlined by frontend developers is CSS-Tricks. It will provide you with numerous educational articles and videos that are definitely worth exploring and you will find new content every day that you can follow to stay up to date.

Learning Books (JavaScript)

The books that developers point out as the most useful right now for an introduction to the world of frontend are Eloquent JavaScript and JavaScript: the Good Parts. It will serve as a great learning ground.

I also highlight the Udemy Modern JavaScript and VueJS — JavaScript Framework courses to perfect your JavaScript knowledge and get started learning framework!

I know many also use Youtube for learning, which is packed with useful content for absolutely every skill and interest. Frontend developers are releasing The Net Ninja Youtube channel featuring videos related to various areas such as HTML and CSS, React, PWA, PHP, GraphQL and many more.

Backend development

Backend development features websites from which you can constantly learn new information and one source so you can stay up-to-date with new information and technologies.

But let’s just say first that we think a backend developer should know:

  • Advanced knowledge of PHP
  • Knowledge of SQL syntax and GIT
  • Basic knowledge of frontend technologies such as HTML, CSS and JavaScript
  • Understanding object-oriented programming, paternity design and best PHP practices

Bonus points:

  • Software development experience
  • Knowledge of Linux and PHP framework (eg Laravel, Symfony, Magenta or others)
  • Basic understanding of the concept of CMS

Let’s not go any further, let’s move on to the materials!

Learning websites

Finally, to stay up to date on backend development and development in general, I encourage you to follow Laravel News! You can also find their podcast on the website which has over 100 episodes so far and is definitely worth a follow.

Many developers are members of the largest development community — Stack Overflow. At Stack Overflow, you can find answers to many of your questions, ask your own additional questions, and expect the answers of several community developers in the near future!

Android development

If your passion is focused on creating Android apps and you are adept at Java, Kotlin might seem like an even better solution (but even if you’re not the most adept with Javascript and Kotlin, no worries, there is everything you need in the materials). I have highlighted very useful materials that will allow you to perfect your knowledge and skills about Android development.

What skills does an Android developer need to have?

  • Good knowledge of Java
  • Understanding basic principles of object oriented programming
  • Experience with REST APIs and databases (e.g., realm or other)
  • Knowledge of Networking (Retrofit)
  • Knowledge of Parsing (gson)
  • Knowledge of Material support elements
  • Knowledge of MVP architecture
  • Knowledge of recycler views
  • Knowledge of debugging methods
  • Experience using Android Studio
  • Experience working with github

Bonus points:

  • Knowledge of RxJava or RxJava2
  • Knowledge of Dagger, Kotlin, rxKotlin
  • Knowledge of Firebase
  • Published application
  • Completed Android Academy or similar

Below are the materials developers used (and still use!) To begin their Android adventure. From the material you can find blogs, websites and Android libraries, and for those who are more visual types — I have singled out the most useful Youtube channels for you!

Learning websites

Youtube materials

If you are a beginner in the Android world, the first two Youtube channels listed will be of great use to you — whether you are a visual type or not — check out Android Developers and Jake Wharton!

I also recommend for beginners Google’s Android developer documentation. Here are guides to learn everything from the process of creating your first Android app to the most complicated actions like saving data to a database and the like. You can find documentation on how to create apps for all types of devices — from smartwatches to Android TVs!

Android libraries

Lots of useful information and instructions, I have also extracted them so that you will never run out of new information at any time.

iOS development

If you are more interested in iOS development and if you would like to become familiar with the Swift language and start developing your iOS applications, you will find the following materials very useful. Each source is carefully selected and the information is relevant and of high quality.

What do you need to know to become an iOS developer?

  • Understanding object-oriented principles
  • Good knowledge of Swift or Objective-C
  • Experience with REST APIs and experience working with local databases
  • Advanced knowledge and use of UIKit
  • Knowledge of HIG
  • Good knowledge of auto layout
  • Knowledge of working with Cocoa pods
  • Knowledge of Apple’s MVC architecture (MVVM or VIPER)
  • Experience working with Xcode Instruments
  • Advanced knowledge of debugging methods

Bonus points:

  • Posted projects or app on GitHub
  • Knowledge of RxSwift

Now that I’ve introduced you to the key qualities our iOS developers need to have — it’s time to learn! Although this may seem like too much at this point, you don’t have to worry. With the following materials, you will master iOS with a dose of willpower and effort!

Learning websites

If you are a beginner in the world of iOS development, we recommend the Swift by Sundell website where you will find beginner-friendly materials.

If you’re more of a visual type, iOS developers recommend Paul Solt and Sean Allen‘s YouTube material. We also recommend that you follow the following developers, from whom you can learn simple and advanced iOS development techniques, namely David Tran and Code with Chris.

UX / UI design

If you are more artistically minded and want to get involved in designing web or mobile applications, you can find useful information from the materials provided that will greatly facilitate your work. But even if you’re a beginner with an interest in UX / UI design, don’t worry, everyone started somewhere. By learning from these materials, you will learn everything you need to successfully design websites and turn your passion into professional work.

First of all, what exactly is a UX / UI designer doing? The designer is the key person in the development of each project — it defines the visual identity of the project, that is, the user interface and influences the user experience most. Will the user experience be comfortable and intuitive or repulsive and difficult? The question to which the designer gives the best answer.

How to be a successful designer? New design trends need to be monitored and the best ways to apply the user experience are known. It is also important to understand the platforms and technologies on which the project is being developed and how to harness their potential. The designer must know the client’s industry and goals, which is a prerequisite for working on projects. Constant learning and refinement are the qualities of a successful designer!

What are the tasks of a UX / UI designer?

  • Analyzing target market and user behavior
  • Designing the concept of a website and wireframe
  • Prototyping and designing and creating designs
  • Assisting the team on UX / UI practices and principles

What are the features that are sought after by a designer?

  • An eye for detail and aesthetics
  • Knowledge of new design trends and knowledge of good UX / UI practices and standards
  • Ability to explain and argue for your own design
  • Consistency, thoroughness and organization in work
  • Great mastery of some of the tools like Sketch, Figma, Photoshop and Illustrator
  • Knowledge of the software solution development process
  • Excellent knowledge of English in speech and writing
  • Proactivity and creativity when giving ideas
  • Openness and ambition

Bonus points:

  • Software development experience
  • Knowledge of the specifics of iOS and Android designs
  • Knowledge of eCommerce platforms and represented CMSs

Below are useful materials and resources, it’s up to you!

Learning websites

The combination of these web sites listed will give you a great base for learning UX / UI design right from the start.

Another recommendation for learning is the Digital Synopsis website — a website full of inspirational ideas where you’ll find suggestions for combinations of fonts, colors, and discover some little tricks you didn’t even know existed!

The necessary tools and video courses for UX / UI design can be found on the LearnUX site. Also for video courses I recommend Udemy!

The Youtube channels I recommend to learn more about design firsthand are The Futur and AJ & Smart. You will find lots of UX / UI design videos on them, and if you are inclined to learn from Youtube, this will be a great solution for you.

To help you create your own graphics and never “dry out” with the photos you need, here are a few websites for you to download for free.

Ultimately, to find inspiration for your designs, you’ll be able to easily do so with Instagram, a social network based precisely on visual content. Many UX / UI designers publish their work on Instagram and the profiles I have highlighted are UX goodies and Daily web design. Both profiles are completely filled with quality content and will definitely serve as good inspiration.

Good luck to everyone with learning!

Web site : https://www.alenibric.com.tr

--

--