By Kim Desmond, Roi Otero Morales, and Trevor Davis, CodingNomads
Oh, Mexico…Beaches, tacos, tequila, and… software engineering! Some of life’s greatest things, and even better shared between a group of new friends. Two months of fun and sunshine while you learn to code for a better career, that’s CodingNomads.
Our Java bootcamp in Mexico group came from around the U.S., England, and our newest CodingNomads Java instructor Roi joined from Spain. Fired up about the opportunities ahead, we wasted no time jumping into coding, and maxing out life in Mexico! Keep reading to learn about the course, our many adventures around Mexico, and what’s next for CodingNomads.
The course — Java coding bootcamp
CodingNomads students learn a skills package of Java, Spring, SQL and AWS. These are skills needed for tens of thousands of available jobs worldwide, and provide a strong foundation of computer science fundamentals to learn any new technology thereafter.
Students also learn critical concepts that any software engineer will need for building out full-scale applications: Git, Github, Jira, Scripting, Travis, and more.
To see our syllabus with a list of the technical concepts we cover, visit our Java coding bootcamp web page. To see a ridiculous (but accurate) visualization of most the concepts learned in class, see photo below. At CodingNomads you can have your cake and learn to code too!
Bonus: Android mobile development with Java
As a bonus – since Android runs on Java – we also ventured into learning some mobile development. The world nowadays is going mobile first, and 88% of the global mobile OS market runs on Android (seriously!). So it was awesome to learn how the skills we’d learned in class – Java, REST APIs, Spring, etc. – applied directly to starting to build Android apps.
Learn to code your own Android app – free training
One of our Java-Mexico students Andy enjoyed tinkering with Android so much that he worked with our instructor Roi to create a simple Tic-Tac-Toe game. To show you how quickly you can create Android apps with fundamental Java knowledge, Roi made a training video that walks through building the game start-to-finish in 90 minutes.
Now, we know Roi has some development experience under his belt, so can bust out an app in no time! 😉 But the video acts as a solid guide for anyone learning to build a comprehensive, complete Android app.
Watch the Android Fundamentals Speed Training below, and visit CodingNomads’ YouTube Channel for other free training vids! The source code is provided here on CodingNomads’ GitHub. The game is pretty fun to play, so check it out!
Why learn Java?
Java continues as the #1 most in-demand programming language for jobs in the US, however, only 9% of coding bootcamps teach Java. We’re proud to be a premier Java education provider, and help our alumni stand out from other bootcamp grads. For more reasons why you should consider learning this ubiquitous and well-loved programming language, check out our Why Learn Java blog.
Java bootcamp class projects
Our Mexico cohort created several projects throughout the course, with subjects ranging from measuring your environmental impact, to scuba diving, to of course – Tic-Tac-Toe!
These projects enabled students to manually code and implement technologies learned in class, building brain muscle memory to start thinking and acting like professional software engineers. Below are the projects our Mexico team created, with links to the source code in GitHub:
Class Project: An Android Tic-tac-toe game
In just a few days after the first Android lesson, our student Andy created a complete Tic-Tac-Toe Android game. The app utilizes AI technology to create an opponent in 2 player mode. The game also has different difficulty levels, and can really suck you in!
Andy published his app in the Google Play store so you can enjoy it for yourself. Its available to download for Android here:
If you want to geek out on coding your own, you can see the public repo here:
Here’s what the app looks like with the project code behind it:
Class project 2: Scuba Diving Logbook App
Even when at a coding bootcamp, you gotta take breaks. Especially when you’re learning to code in paradise! Our Mexico cohort took breaks by experiencing the truly incredible underwater worlds in and around the Yucatan Peninsula. Many also got scuba certified during the Java bootcamp!
While thinking of engineering projects to implement concepts learned in class, we considered things we could actually use. With our dive adventures in mind, our students created a simple logbook app to track data from our scuba dive sessions. Simple, but enough to put into practice a Java / Spring project with MVC, Thymeleaf, Spring security, MySQL DB, RestTemplate and various other techs!
The app helps you keep track of various data points that even in our digital age, scuba divers still write in a physical book! So it was cool to create something useful and relevant to all the fun we were having in Mexico.
You can see an example of the source code here:
Final Class Project: Personal Impact Tracker (Ongoing)
The cool thing about software engineering is it can be applied to anything. The cool thing about travel is it opens your eyes to the world, and your particular place in it. At CodingNomads, we care about making a positive impact on the world. We are very fortunate to be surrounded by students, teachers, and a global community who care about environmental and social justice causes.
For our final project our students are developing web and Android apps that enable you to track your personal impact on the planet, and make commitments to reduce it.
Saving the world, one API at a time…
The project was built with the Java programming language and Spring Framework, using SQL, AWS, Github, and various other technologies. After creating a username and password, the app prompts you to create commitments to lower your footprint through various actions, including reducing meat and palm oil consumption, and driving. The impact of these actions is measured in their equivalent of CO2 emissions and water consumption, giving you the awareness and motivation to control and reduce your impact.
Here is a link to the repository of the Rest/Web server repo:
You can see the Android App repository here:
Agile software development with Scrum
For our final projects, our students and instructors utilized Scrum processes to mimic a real-world software development workflow. During the final 4 weeks of our course that take place online, the team had daily stand-ups via video chat to synchronize their work, discuss possible blockers, and have a clear plan for their tasks for the day.
Our sprints were one week each, after which students would deliver their work for that sprint in a production environment (deployed in Amazon AWS) to the stakeholder (the teacher :D). During our sprint reviews students had the chance to analyze the good and bad during that sprint to improve for the next, and plan the next sprint.
All of the code was covered with Unit Tests and some Acceptance Tests that were automatically run in Travis (a Continuous Integration and Deployment tool) when students pushed a new commit to their branch. After merging their branch to the master branch, the task wasn’t done until the deployment to production was done, reflecting Agile practices commonly used by companies worldwide.
The trip: Life in Mexico
Our classroom space at Nest Coworking in Playa del Carmen was just a few blocks from the white sand beaches and warm blue waters of the Caribbean. This made for easy lunch breaks on the beach, and in CodingNomads fashion, lots of boat trips. On the weekends we went on adventures around the Yucatan Peninsula, as well as to Mexico City for Day of the Dead. We had way too many fun memories (and photos and videos!) to document in just one blog, but see below for the highlights!
Weekend in Tulum
We returned to the Tulum beach house we also rented for our Java bootcamp in 2017, with the most spectacular white sands surrounding it. There we snorkeled off the shore, practiced yoga on the patio, played cards and cooked a feast, visited the Mayan ruins, swam with a crocodile, and explored Tulum’s bohemian beach scene. Here we are inside the house, and the view from our porch:
We didn’t create our dive app just for the codeschool! The waters around Playa del Carmen feature some of the best diving in the world and we took full advantage. We were able to see bull sharks, nurse sharks, huge sea turtles, barracudas, manta rays, eels, colorful coral, and more. We went scuba diving in sunken boats, at night with underwater flashlights, and in crystal clear underwater caverns called cenotes. Check out our shark dive below!
Around the Yucatán: Cenotes, Ruins and the Pink Lagoons
We took a road trip around the Yucatan peninsula, visiting the famous Mayan ruins of Chichen Itza and the deep cenote of Ik kil.
We also visited the Mayan ruins of Uxmal, where we ascended the pyramids and observed the forest from a different perspective. Incredible!
We spent a night in Merida, a beautiful city were we saw a modern representation of an ancient Mayan ball game. We also visited “Lagunas Rosadas”, or Pink Lagoons, which got their name from the seaweed that turns their waters pink. In the lagoons, salt is made from evaporating sea water that seeps up inland from underground.
Día de los Muertos (Day of the Dead) in Mexico City
This is CodingNomads second annual Dia de los Muertos celebration in Mexico. In 2017 we painted faces and visited various altar installations around Playa, and in 2018 our team celebrated in Mexico City!
We never got tired of exploring new cenotes
And as is tradition, we sang our hearts out at karaoke
This one goes out to you guys.
So many great places, so many fun memories…
Another amazing Java bootcamp in Mexico for the books!
We’ve learned so much in such a short period of time, and the quality of the experience was magnified by all the fun we’ve had, the friends we made, and all the beauty we experienced in Mexico. It’s been an amazing ride, and we’ll see ya in 2019 where we look forward to the opportunities the future holds!
Our upcoming Java coding bootcamp in Bali will be one for the books, as for the first time we’ll host it side-by-side with our Python bootcamp in Bali, beginning February 2019. It’s going to be the biggest, most fun bootcamp ever, with opportunities for skill shares between the two languages, and all the more networking and friendship. Seats are filling up, so get in touch with us and submit your application before our Bali coding bootcamps sell out!