Full Stack Java Bootcamp

Sold Out... This bootcamp was fully booked and is no longer available

Update: Bootcamp registration was CLOSED. Thanks to everyone who signed up!

The Bootcamp was available in 2017 and we have no plans to do another one in the forseeable future.

In this intensive hands on bootcamp we will build a real world mobile app startup and launch it. We will learn mobile programming, applied design, full stack (server, client, deployment) and everything that is necessary to build and launch an application with a backend server.

In this bootcamp you will get:

- 4 weeks (20 days) of intensive videos/webinars, written materials/missions ($1997 value)
- 2 months of Enterprise Codename One subscription to help build amazing apps easily ($798 value)
- 2 one on one private calls with Shai to better tailor the bootcamp for your needs ($800 value)
- Private Facebook community group whose membership and support would extend beyond the completion of the bootcamp
- Private whatsapp group for group collaboration via chat
- Free access to current and upcoming Codename One courses ($398 value)

IMPORTANT: Due to the way bootcamps work registration opened on Monday March 13th at 12PM GMT and registration will close once student quota is reached or on Friday March 17th at 12PM GMT. Whichever comes first!

When will the bootcamp start?
The whole bootcamp will last 4 work weeks (5 day weeks). The 4 weeks will be divided into 2 week batches so we’ll have 2 intensive weeks followed by a week and a half off to regroup and the second part.

The bootcamp will start on March 27th and the first two weeks will end on April 6th.

It will resume on Tuesday April 18th and will end on Monday May 1st.

Hours for the 1 on 1 sessions will be scheduled individually ideally before the start of the bootcamp for the first session. Since they are 1 on 1 sessions hours would be flexible.

How is a bootcamp different from a course?
Unlike regular courses a bootcamp is a "living process" that adapts to the students as it progresses. We will have both one on one talks as well as group chats during the bootcamp. These activities will impact the direction and the results of the entire process.

This leads to a more effective and more challenging learning experience.

In the bootcamp we go thru the process of building the materials of the course together as well as learning the materials together. This means that the material adapts to answer your needs/requirements and questions as they evolve during the process.

A bootcamp is a shared transformative experience. The students form a team and go on "missions" (daily tasks) to accomplish the end goals of the bootcamp.

What are the goals of this bootcamp?
This bootcamp will teach you how to build a great looking real world app with backend server across the stack. To prove that we will build together a real world elaborate mobile startup which we will launch as the bootcamp completes.

Will I be able to ship the code of this bootcamp as a startup of my own?
Yes. Notice that we will launch a small startup based on this to show you how it's done however the target field is HUGE and every student should be able to target a niche and release their own startup if they choose to do so. We will provide the full blueprint, code and everything necessary thru every step and the mentoring to do so if you wish.

What will the app be?
Startups should maintain some secrecy which is why we will only discuss the actual app we will be building during the bootcamp to the people who are in the bootcamp. There are a couple of reasons for that beyond secrecy:

- Managing expectations - if we describe the app attention will gravitate to existing apps in the field. It will create expectations we are unaware of and don't plan to match

- It's not important - while building this specific app is valuable, the core value of the bootcamp is in the process that can be applied to any app. We chose an app that uses common features most of which you can apply in any field

What is the structure of the bootcamp?
That is fluid since you (the students) determine the ultimate structure. However, to meet the goals of the bootcamp we need to have a plan and this is the current curriculum:

  • Pre course - developers who don’t have Codename One experience will take a small crash course in some of the basics of Codename One so we can begin on an equal footing. This will include some pre-made videos and a few missions to get them ready
  • Week 1 - Basics: Layouts, theming, portability, density, basic design principles, GUI builder vs. handcoding, animations/transitions, storage, SQLite, networking, threading, EDT, custom components, certificates & signing
  • Week 2 - Deeper into the core of Codename One and beginning of building the app we will build thru the course, initial server setup with client/server communication (websockets/webservices)
  • Week 3 - App completion and refinement. Server initiated push, complete design both in CSS & designer, integrating native code
  • Week 4 - Loose ends - security, store upload, localization/internationalization, performance, on device debugging

Pre-course materials will be published before the bootcamp begins and will provide newcomers the chance to learn the basics of Codename One and existing developers a chance to brush up.

What are missions?
In a regular course we have exercises that help us understand what our instructor did during the session.
Missions are the exact opposite. A mission is handed out before the next session begins and includes things that will be discussed in the session. You can do that as part of a team (in chat) or alone. Those who accomplish the mission before the session will have a leg up on the material that's discussed.
Missions are optional but they are far more powerful than exercises as they flex the brain on things that you haven't learned yet. Failure isn't a problem because the material will be covered, searching for the solution is the main value.

I'm on a different timezone won't that be a problem?
No. 1 on 1 sessions are more flexible and we can adapt to arrange them at hours that work for everyone.
Live sessions will always be recorded and can be followed up after/before the fact thru the whatsapp chat and facebook group. We might remove live sessions entirely of shift their hours so participation can vary based on the diversity of the group. Personally I will do most of my work starting at 9PM in my local time.

What sort of time commitment will I need?
That would vary a lot. I'm sure you will get a lot from the bootcamp even with minimal time commitment however to be effective you would want to put in the effort to do the missions and collaborate with your peers. Study requires an effort on your part and part of the benefit of the bootcamp structure is in the fact that it forces you to study to keep up.

You can probably get away with multi-tasking in an online bootcamp but to get the most I'd recommend 2 to 4 hours per day of bootcamp during the 20 total days. I know this is a time commitment we can't all keep with. Which is why we'll structure the bootcamp in such a way so we won't lose you behind if you missed a portion. We will also have almost 2 weeks off in the middle of the bootcamp which will allow some of you who might have fallen behind to catch up.

During this time off communication will be open and we'll help people (and conduct 1 on 1's) but there will be no new material posted so this will give you some time to go over the existing material and make sure you are up to speed.

Your Instructor

Shai Almog
Shai Almog

Shai has 25 years of professional software development experience and has worked with Java since it's inception. He was a member of the first team at Sun working on bringing Java to mobile phones and has been in the forefront of that industry since then.

He is the co-founder of Codename One which is the only write once run anywhere tool that allows Java developers to build native iOS (iPhone/iPad), Android, Windows apps with a single code base.

This course is closed for enrollment.