ReactJS Workshops
in Europe, USA and Turkey

By Ustun Ozgur Software

We provide professional React.js and Advanced JavaScript training and workshops in Europe, Turkey and the US.

React.js Training & Advanced JavaScript Training

Ustun Ozgur Software is a company that builds modern and ambitious web applications.

About the Trainer

Ustun Ozgur is an experienced software developer, specializing in JavaScript and Python. He is the founder of Ustun Ozgur Software, and has been building SellerCrowd, a NY-based online social networking platform for the advertising industry since 2012.

He has been using React extensively for the past 2 years and has given several talks at conferences and meetups. Recently he has started giving workshops focusing on React and JavaScript. He believes the language of the future is JavaScript and React will become the most important library in the JavaScript ecosystem.

For detailed information about his experiences with React, see the about section below.

React.js Training in Europe, Turkey and the US

We give professional React.js training in Europe, Turkey and the US.

The workshop takes 1 day for the basic course and 2 days for the full course (basic and intermediate). (See details below.)

Interested in getting professional training for your company or user group?

Contact us at training@ustunozgur.com to inquire about our training.

Upcoming Training and Workshops

Previous React.js Training and Workshops

Detailed Information About React.js Training/Workshop

React is without doubt the most exciting JavaScript framework nowadays. It may not yet be the most popular, but its foundations are so strong that even competitors like AngularJS and EmberJS have taken notice and are in the process of adding features that were first popularized by React. It was open sourced by Facebook and Instagram, and in the two years following its announcement, it has gained adoption by many important web sites, including Khan Academy, Airbnb, Hipchat, Netflix, at an ever growing pace.

React is both easy and simple to learn and use. After learning a few core ideas, building complex web interfaces rapidly becomes almost trivial. In this workshop, we will be learning ins and outs of React and at the end of become ready to use React in our existing and new projects. One of the major selling points of React is that it lives happily with existing technologies so that one can transition to React in an existing application piece by piece, rather than committing to it fully and we will see how React makes this easy.

One of the most important reasons React has become popular has been its speed. In this workshop, we will go over this issue and learn about virtual DOM which makes React this fast, but most importantly we will see that speed is actually not the biggest selling point of React. We will argue that speed of development, simplicity and ease of reasoning about code written with it is of utmost importance and we will observe how thinking in terms of isolated components makes building UIs effortless and designer friendly.

The workshop will comprise the following sections:

Major ideas
Static applications
Changing state
AJAX calls and other data sources
Form handling
Flux
Performance Optimization and Immutability
Testing and JestJS
React Router
Server side React and Flux
Integration with UI Frameworks like Bootstrap and jQuery UI
Integration with Other Frameworks like Angular

Getting Started with React: Day 1

  1. Brief overview of the major ideas in React: Components, re-rendering all the time, virtual DOM, props and state. We will build some isolated small components (Hello World, counters) to exemplify core React ideas.
  2. Building an example application where almost everything is static. We will see how straightforward it is to get an existing HTML mockup and transfer it to a React application, where the application is dissected into components.
  3. Modifying the example application so that we have changing state. We will convert an existing static application, by modifying a few isolated parts so that their data changes.
  4. Integration with AJAX calls, and other data sources: After making sure our application can make changes in state locally in the page, we will see how to integrate AJAX calls (e.g. jQuery get/post requests) seamlessly with our React application. React is agnostic with regards to its data sources, each data change needs to be accompanied with just a setState call to be integrated with React.
  5. Form handling in React: Forms are the most important part of applications where user changes the data living on the server. In this section, we will see how React handles forms, and compare controlled and uncontrolled inputs. We will also cover form validation and one-way vs. two-way data binding with React state and form elements.

Advanced Topics in React Ecosystem: Day 2

  1. Flux: As React applications grow bigger, data management may need to be handled differently. Flux is a pattern popularized by Facebook which uses action creators and stores to handle big applications where the same data might be used in more than one discrete parts of UI in a single page. We will go over an example chat application which uses Flux to manage different parts of a UI that has to be syncronized with chat message data.
  2. Performance Optimization and Immutability: React is fast by default, but it can be made even faster if you give it some hints. In this section, we will go over details of shouldComponentUpdate method and we will also see how using immutable data structures make this optimization trivial, at the cost of introducing a different way of thinking about data, in which each data structure can only be updated to a new version, but not updated in place. We will go over ImmutableJS, another library released by Facebook, that brings immutable data structures that were mostly popularized by functional languages like Clojure.
  3. Testing and JestJS: Testing is an important part of every application. Regressions are a big frustration in UI code, although with React you will observe that bugs are much less common. In this section we will see how to test React components, and also cover JestJS, a unit testing tool released by Facebook for testing React and JavaScript applications.
  4. Integration with Other Technologies

  5. Integration with Other UI Frameworks like Bootstrap or jQuery UI: React may or may not coexist with other UI frameworks or libraries, depending on whether those modify the DOM after bootstrapping. In this section, we will see in which situations React can co-exist with these libraries.
  6. Integration with Other Frameworks such as Angular: Although React and Angular are competitors, they can happily co-exist. In this section, we will see how to integrate React in a foreign environment to reap some of its benefits. This section is important because most of the projects we as developers are working on are existing projects and it is imperative that we can easily integrate React in a brownfield project. We will also briefly compare Angular, Ember and React.

Advanced JavaScript Training in Europe, Turkey and the US

We provide professional JavaScript training and workshops in Europe, Turkey and the US.

Interested in getting professional training for your company or user group?

Contact us at training@ustunozgur.com to inquire about our training.

Upcoming Training and Workshops

About the Trainer

Ustun Ozgur

Contact

Contact us at training@ustunozgur.com to inquire about our trainings.

Disclaimer: This site is not affiliated with Ryan Florence and Michael Jackson's reactjs-trainings.com