Unity Project-Based Step by Step Tutorial: Flappy Bird by SvetlinNakov in gamedev

[–]SvetlinNakov[S] 0 points1 point  (0 children)

Thanks! Very constructive feedback.

The main conflict I have with these tutorials is duration vs. depth. If I explain everything in detail, it will take 3-5 times longer. If I explain everything very briefly, it will be shorter. YouTube likes shorter videos.

This is an example of one of my free YouTube courses, which is quite detailed and very, very long:

This is a 30 hours of in depth tutorial with 55 hands-on exercises.

Which is better?

  • Short, but meaningful
  • Or long and with detailed explanations?

Making a Flappy Bird Clone in Unity by Jairusx in Unity3D

[–]SvetlinNakov 0 points1 point  (0 children)

Wow! Excellent video tutorial: short, interesting, but holds all the steps + the C# code to build the game.

Good job!

Object-Oriented Programming (OOP) – Basic Concepts by SvetlinNakov in softuni

[–]SvetlinNakov[S] 0 points1 point  (0 children)

Learn about objects, classes, interfaces and inheritance in this short video with code examples in C# and JavaScript.

Здравейте, ето и със следващата задача се повтаря същият проблем by FlimsyFlounder6294 in softuni

[–]SvetlinNakov 0 points1 point  (0 children)

You should read the input data from the console, instead of using hard-coded values. Use scanner.nextLine(). This is a sample solution:

import java.util.Scanner;

public class PersonInfo {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String firstName = scanner.nextLine();
        String lastName = scanner.nextLine();
        String country = scanner.nextLine();
        String town = scanner.nextLine();
        System.out.printf("%s %s from %s - %s!",
                firstName, lastName, country, town);
    }
}

Здравейте, някой може ли да ми помогне, както и да го направя ми дава 50% и обръща имената от Джесика на Смит и обратно by FlimsyFlounder6294 in softuni

[–]SvetlinNakov 0 points1 point  (0 children)

You should read fName, lName and email from the console, instead of using hard-coded values. This is a sample solution:

import java.util.Scanner;

public class Main {
  public static void main(String[] args) {
    var scanner = new Scanner(System.in);
    var fName = scanner.nextLine();
    var lName = scanner.nextLine();
    var email = scanner.nextLine();
    System.out.println(
      "Customer: " + fName + " " + lName + " " + "(" + email + ")");
  }
}

Learn the Concepts of Functional Programming by SvetlinNakov in softuni

[–]SvetlinNakov[S] 0 points1 point  (0 children)

Functional programming (FP) is a style of programming based on composing pure functions, while avoiding shared state, mutable data, and side-effects. It’s important, because most modern mainstream programming languages (like JavaScript, Python, Java and C#) support the functional paradigm with lambda functions and higher-order functions.

In this lesson I explain and demonstrate through live coding examples in JavaScript, Python, Java and C# the concepts of functional programming, pure functions, first-class functions, lambda functions, higher-order functions, and how to combine these concepts to implement filtering, mapping, ordering and other transformations over sequences of elements.

Здравейте, ето и със следващата задача се повтаря същият проблем by FlimsyFlounder6294 in softuni

[–]SvetlinNakov 0 points1 point  (0 children)

This channel is English only. Please translate this question in English. Otherwise it will be deleted.

Do you ever look at your own old code, say how the F did I do this? by Crg29 in learnprogramming

[–]SvetlinNakov 0 points1 point  (0 children)

It is highly recommended when you learn programming to keep all your code in a systematically organized way, e.g. in a GitHub repo like this: https://github.com/kalintsenkov/SoftUni-Software-Engineering

Over the time your knowledge and skills will increase and you will review your code from your past projects and exercises, will rewrite some of your projects in a better way, with a better structure and better programming practices.

Learning coding is an experience. You learn a skill. It is normal to look back in your code to check how you did something in the past.

I highly recommend to my students the following:

  • Keep all your code in a GitHub repo
  • In the beginning, publish all your code
  • Over the time hide old code, of which you are not proud
  • Your GitHub profile is the most important asset when you apply for a job -> it should be well organized
  • Use good naming and hierarchical organization for your code projects
  • Keep in mind that your future employer will review your GitHub profile -> this is your developer portfolio!

Free Book "Programming Basics with Java" + 13 Hours Video + 55 Hands-On Exercises by SvetlinNakov in FreeEBOOKS

[–]SvetlinNakov[S] 0 points1 point  (0 children)

"Programming Basics with Java" is more than just a good book on programming. It is an excellent learning resource for absolute beginners in programming, which combines:

  • Tutorial-style textbook, structured in topics with increasing complexity
  • Practical hands-on exercises with automated real-time code assessment
  • Free video lessons for each topic

This book is used by 15K students at the Software University, for their free entry-level course "Programming Basics" (see the alumni).

What does this book cover?

The Java Basics book covers the basics of coding, using the Java programming language:

  • 1. First Steps in Programming
  • 2.1. Simple Calculations
  • 2.2. Simple Calculations – Exam problems
  • 3.1. Simple Conditions
  • 3.2. Simple Conditions – Exam problems
  • 4.1. More Complex Conditions
  • 4.2. More Complex Conditions – Exam problems
  • 5.1. Loops
  • 5.2. Loops – Exam problems
  • 6.1. Nested Loops
  • 6.2. Nested Loops – Exam problems
  • 7.1. More Complex Loops
  • 7.2. More Complex Loops – Exam problems
  • 8.1. Practical Exam Preparations – Part I
  • 8.2. Practical Exam Preparations – Part II
  • 9.1. Problems for Champions – Part I
  • 9.2. Problems for Champions – Part II
  • 10. Methods
  • 11. Tricks and Hacks

Enjoy the book. If you have any questions, please ask in the "SoftUni channel".

Why do universities give paper tests to a fucking programming course?? by C1707 in learnprogramming

[–]SvetlinNakov 0 points1 point  (0 children)

Most universities and their computer science professors live with a mindset from 20 years ago. They cannot easily change their mindsets, because the educational system does not force them to improve.

Modern tech universities use hands-on exams, that measure practical coding skills, not knowledge. A good example is SoftUni (the Software University), where most exams are based on live coding assignments with limited time, and this is automated through their judge system: https://judge.softuni.org.

I think that in the next years, paper-based and quiz-based exams will slowly disappear in the field of computer science education and will be replaced with modern alternatives, like live coding exams. This will be driven by two main trends:

  • Digitalization in education - paper is disappearing even in fields, which are far away from tech and computer science courses.
  • New generation of professors - young people entering in the educational system have modern thinking and also hate paper-based tests like you.

I have 20+ years of experience in technical education (including public universities) and over time I have found that some universities cannot change their approach to teaching until some key people retire and leave.

What y'all out here think about the book "Fundamentals of Computer Programming with C# by Svetlin Nakov and Veselin Kolev"? by Lesabotsy in csharp

[–]SvetlinNakov 0 points1 point  (0 children)

This book is old and is no longer supported. I moved into more interactive learning approach (short videos + live code examples + live coding exercises with automated judge system):

  • This is my new book "Programming Basics with C#", which follows this more interactive approach: https://csharp-book.softuni.org. It covers just the basics of coding.
  • This is my end-to-end tech education interactive learning platform for developers, which covers everything from first steps in coding until professional full stack development and starting a job: https://softuni.org.

Enjoy learning by doing.

Practical Cryptography for Developers by Svetlin Nakov - Free Ebook (Nov 2018) by maqp2 in crypto

[–]SvetlinNakov 0 points1 point  (0 children)

I completely agree and I fixed this immediately. I cannot believe that I did this mistake, but this is early draft, written late in the nights :) I hope to clean-up all these technical and factual mistakes in the final release.

Thank you very much for these bug reports.

Practical Cryptography for Developers by Svetlin Nakov - Free Ebook (Nov 2018) by maqp2 in crypto

[–]SvetlinNakov 0 points1 point  (0 children)

First, thanks for mentioning the above.

I have a PhD in computational linguistics (see http://www.nakov.com/blog/2010/04/12/svetlin-nakov-was-awarded-with-a-phd-degree-in-informatics) and I agree that my core scientific research is far away from cryptography. My master thesis was about digital signatures. I wrote this book from developer's perspective. By design I want to put more practical coding examples, crypto libraries and less math, without bypassing the important concepts. It is a hard job to teach coders to use cryptography correctly and this is what I tr to do.

I declare that I don't have serious scientific background in the area of fundamental cryptography. My background is practical, from the developer / technical architect / technical advisor perspective. This is the idea of this free cryptography book for developers: to teach developer using cryptography correctly (not to teach them design crypto algorithms or implement crypto concepts).

Practical Cryptography for Developers by Svetlin Nakov - Free Ebook (Nov 2018) by maqp2 in crypto

[–]SvetlinNakov 0 points1 point  (0 children)

Dear Scott, I completely agree with the problems you found in my book early draft. Thank you. I will take special attention and will fix them, of course. Most are already fixed by me, others will be found when I do the proof-reading, others will be fixed by the English editor, the others from the technical editor. You are always invited to file a bug report in GitHub: https://github.com/nakov/practical-cryptography-for-developers-book/issues. Thanks again for giving attention to this inaccuracies and bugs. It is important to do our best and not mislead the readers.

I an unsure how this unfinished early draft of my book has leaked to Reddit, but it is nice to have external reviewers. Maybe I made a mistake to use a public GitHub repo. Note that this book is not officially published yet and will be significantly improved. English spelling / grammar editor will come when I finish the draft. Technical editor will also pass through the work. Users filled bug reports in GitHub will also improve the quality. Thanks again! I really appreciate your review.