Cursuri

So You Think You Can #

Most programming languages offer some kind of associative "arrays" or containers. They may be called differently: maps, dictionaries, hash-maps, unordered-maps, hash-tables, etc.

If you've never heard of them, this workshop is for you. If you've seen them before, but you're not sure which one to use for a particular task, this workshop is for you. If you're confident in using such fast lookup structures, great! But you'll still be surprised by the details we're going to cover in this lecture.

After this journey from the very basics of lookup data structures up to advanced hashing techniques, you'll feel more confident when & how to use them effectively.

This workshop assumes familiarity with the C++ language, as we'll focus on hashing facilities in the standard library and beyond. We'll take a deep dive into hashing algorithms and hashed data structures, both in design and examples.

Difficulty: intermediate

Format: 2 days x 2h

Victor Ciura

Trainer: Victor Ciura

Caphyon, Technical Lead

A list<> of data structures you should add in your learning queue<>

In this workshop we'll explain the mechanics behind data structures, and we'll deep dive into the meaning and usage of the most common ones.

Let's try together to get some insights in some data structures and their pitfalls.

We'll discover, by lots of examples, the strengths and weaknesses of each data structure and find good use cases for:

  • Vector and List
  • Stack and Queue
  • Hash Table
  • Graphs and Trees
  • Heap.

Difficulty: intermediate

Format: 2 days x 2h

Telechi Nicolae

Trainer: Nicolae Telechi

Caphyon, Senior Software Developer

Build a video call react app with WebRTC and Socket.io

Key points:

  • Short intro into creating react app
  • What are sockets and Socket.io
  • Intro in WebRTC
  • Creating the app.

Difficulty: intermediate

Format: 3 days x 2h

Radu Albastroiu

Trainer: Radu Albastroiu

Caphyon, Software Developer

Build cryptocurrencies exchange using React

Cryptocurrency exchanges are widely the main means of getting and selling crypto in general.

In this course we'll learn how to build an interactive cryptocurrency exchange interface using react reusable components and crypto real time market data.

Difficulty: beginner

Format: 2 days x 2h

Trainers: Emilian Minoiu si Bogdan Nicolae

NetRom Software, Senior Software Developers

Building an app using Blockchain

Elon Musk vs Bitcoin? It doesn't matter, we're here for the magic behind.

While cryptocurrencies are becoming more and more popular, the number of blockchain developer jobs is getting bigger and bigger.

But what is the technology behind Bitcoin, how can you use it in a real application, how and why is it used by the world's biggest companies? Find out all the answers in an introduction to blockchain.

Difficulty: beginner-intermediate

Format: 1 day x 2h

Andrei Zuica

Trainer: Andrei Zuica

Caphyon, Full Stack Developer

Getting a11y right

This lecture will be an introduction to web accessibility, with plenty of examples of applying various accessibility principles, both offline and online.

You will learn:

  • what accessibility is
  • why should you care about it
  • accessibility on the web
  • debugging/tests for accessibility.

Difficulty: beginner

Format: 1 day x 2h

Andrei Popa

Trainer: Andrei Popa

Syncro Soft, Software Developer

Importance of good coding habits

This course will introduce you in the world of Java code style guidelines. Knowing a programming language is not enough to be a good developer. Programs must be not only correct but also human-friendly and understandable. Code conventions help you have a more readable, secure and consistent project.

We're here to show you good practices and how to avoid confusion and coding errors that will bring your code quality to the next level.

Difficulty: beginner

Format: 2 days x 2h

Trainers: Lucia Bragaru si Adriana Pricina

NetRom Software, Senior Software Developers

Java Swing Crash Course

In this workshop we will cover the basic steps of creating a GUI in Java. As a bonus you will see how you can handle and style XML data using XSLT.

You will learn to:

  • setup a Java Development environment
  • create a graphic interface in Java
  • basic XML and XSLT notions and handling.

Difficulty: beginner

Format: 1 day x 2h

Artur Bozieac

Trainer: Artur Bozieac

Syncro Soft, Software Developer

State of the Art Natural Language Processing for Noobs

If you think that understanding a computer's language is hard, put yourself in its shoes and imagine how hard it is for a computer to understand the human language.

Join this course to get a glimpse of NLP (Natural Language Processing), a language designed specifically to bridge this gap.

You will get to know basic NLP concepts and some of the possibilities that the current NLP tools offer:

  • find out what part of speech each word represents
  • determine the sentiment of a phrase related to a subject
  • retrieve meaningful information within a string of characters.

Difficulty: intermediate

Format: 2 days x 2h

Bogdan Dumitru

Trainer: Bogdan Dumitru

Syncro Soft, Software Developer

Why we code

Computing has become ubiquitous in our modern society. The relentless work of machines enables us to save time, connect with other people, live longer and prosper. Their code is executed at mind-bending speed. However, it is constructed and written by human brains ? at human speed.

This course is an exploratory journey into the world of code.

Part I of this lecture will present the human journey of how and why we arrived at the power of code, followed by part II - on useful practices of how to best harness that power and the responsibilities that come along with it.

Difficulty: beginner-intermediate

Format: 2 days x 2h

Gabriel Diaconita

Trainer: Gabriel Diaconita

Caphyon, Senior Developer