Onel’s 2018 Year In Review 🌟
Highlights from 2018
Highlights from 2018
When I look back at 2018, I see a year full of community engagement, and personal and professional growth, achievement, and progress for me.
Fusemachines AI Fellowship
The [Fusemachines] AI Fellowship is a one-year long fellowship program that turns maths/programming students into Machine Learning Engineers.
I became a Fusemachines AI Fellow in January, and since then, I’ve completed 75% of the course-based learning activities. As part of the Fellowship, fellows work to complete Columbia University’s MicroMasters in Artificial Intelligence. I’m convinced I have built a solid foundation necessary for further study and application of artificial intelligence having completed the Artificial Intelligence, Machine Learning, and Robotics courses.
I tackled several projects and activities that allowed me to better understand and utilize AI techniques including natural language processing, reinforcement learning, supervised and unsupervised learning, neural networks, search, and robot kinematics and motion planning algorithms.
Additionally, these courses helped to orient my learning of the mathematical concepts I need to be a successful machine learning practitioner, which is something I really appreciated.
The final course is titled CGI and Animation, and I look forward to understanding and exploring the applications of AI technologies in the domain of film and animation.
CODE2040
CODE2040 is a non-profit organization and community on a mission to ensure the full representation and leadership of Black and Latinx people in the innovation economy by creating pathways to their educational, professional, and entrepreneurial success in tech.
Some experiences drastically change our worldviews, and my experience as a CODE2040 Fellow was one of those. I was exposed to a variety of new ideas and perspectives, learned new technologies, and made new friends. I also came away with exciting stories, a community of incredible technologists, and a plethora of professional skills I have since found incredibly useful.
Around the time CODE2040 announced they would be expanding the Fellows program to New York City, Nora Traughber planted a seed by encouraging me to consider becoming a CODE2040 Mentor.
This summer, I was a CODE2040 Mentor to Brandon Pineda Castillo, a smart and curious student at the University of California, Berkley who interned at Goldman Sachs in New York City.
While he spent the summer building a data ingestion pipeline, developing APIs, and extending data models, I was learning what it meant to be a good mentor in general, and more specifically, a good mentor to him. The information from CODE2040’s mentor workshops coupled with the supportive cohort of CODE2040 Mentors made the experience an edifying, delightful, and all the more rewarding one.
Being a mentor is made that much easier when you have good models to emulate, and I am thankful to have had many great mentors.
/dev/color
/dev/color is a non-profit organization whose mission is to empower Black software engineers to help one another grow into industry leaders.
I discovered /dev/color as a CODE2040 Fellow but became more familiar with it at its Open Houses/Info. Sessions in New York City once I started working full-time. I applied to join its 2018 A* cohort, but alas, I was denied. After spending 2018 as an affiliate member, I reapplied to be among the 2019 A* cohort and was accepted.
I am excited to be joining the /dev/color network and anticipate accelerating our professional growth together in 2019 and beyond.
Writing
I love the writing. I love the idea of typing and seeing it on the computer and printing it out myself and, you know, moving sentences around. I like that.
— Carol Burnett
Carol’s quote resonates a great deal with me because I also share this love for writing. It brings about similar feelings to those I feel when I write code. Knowing that I enjoyed writing and wanting to do more of it, I resolved at the start of 2018 to write more and publish more.
I now publish pieces here on Medium and have articles published in the Towards Data Science and freeCodeCamp publications, two of Medium’s largest tech publications. In 2018, I published the following 9 pieces:
- Machine Learning Basics with the K-Nearest Neighbors Algorithm
- Stability in Sorting Algorithms — A Treatment of Equality
- Misleading Intuitions: Defining Private Class Methods in Ruby
- No More Surprises: Going Deep with JavaScript
- JavaScript’s Call and Apply
- JavaScript for loops and the differences among them
- Checking strings for patterns in JavaScript
- RoboReflections #1: Into to Robotics and the Robot Operating System
- Python: One Problem, Several Lessons
American Caribbean Maritime Foundation (ACMF)
The ACMF is on a mission to alleviate poverty and transform lives in the Caribbean through maritime education and community development.
I started volunteering as a web developer at the ACMF while the organization was in its infancy early in 2017. I did this at the request of my mentor and current president and executive director of the ACMF Dr. Genieve Brown-Metzger, a powerhouse of a person I’ve known since I began college.
This was a great opportunity for me to practise my web development skills after college while searching for a full-time engineering role. It was also an opportunity to learn about non-profit social enterprises and pour some of the proverbial water back into the well.
The 2018 Anchor Awards at the New York Yacht Club on October 18 was the ACMF’s big bang event of the year. Guests from all over the United States and the Caribbean attended the event, and among them, I was thrilled to meet the honorees of the evening: Michael Bayley, President & CEO of Royal Caribbean International; Roland Malins-Smith, Founder and Retired President of Seafreight Line Ltd; and Rick Murrell, SVP Managing Director of Saltchuk and Chairman, Tropical Shipping.
I was also particularly pleased to meet Dr. Fritz Pinnock, a Jamaican giant whose work I admire very much, and to reconnect with The Honourable Robert Montague.
That evening, we raised nearly $300,000 for scholarships and projects at the Caribbean Maritime University. When I heard this, “mi glad bag buss” (I was overcome with joy).
ListenFirst
I worked on multiple new features in the ListenFirst Product including Content Optimization, Content Tagging, the Paid Analysis Suite, and some unreleased features. In doing so, I learned how to build user interfaces with React, which we adopted in the latter part of 2017. I also had to reacquaint myself with D3.js to build data visualizations for some of those features.
Additionally, I learned some of the ins-and-outs of optimizing a data warehouse’s (AWS Redshift) performance, which was really exciting.
Earlier in 2018, I proposed to mentor our newest teammate because I saw a need for us to approach engineering mentorship more intentionally on our growing team. Out of that came a tremendous amount of learning and a framework for mentoring new engineers that we will be adopting to better support new engineers going forward. I’m particularly proud of this work and its outcomes.
Functional Programming
The mind, once stretched by a new idea, never returns to its original dimensions.
— Ralph Waldo Emerson
If you code, you probably remember the feeling you had when you thought you understood recursion and when you knew you understood recursion. I love those moments when I finally understand a concept or technique that I had been struggling to develop an intuition for.
When I began at ListenFirst, I wasted no time in trying to figure out what my teammates knew that I didn’t. I asked several of them to suggest something for me to learn that would force me to think differently, bend my mind, and create eureka moments. Functional programming was the clear winner!
I chose to explore functional programming by learning Haskell; it was an obvious choice because a teammate with whom I work closely is a Haskell programmer.
Some functional programming eureka:
- Learning how to properly read function type signatures unlocked an understanding of how to leverage closures, higher order functions, and unary functions to create the effect of currying and using partial application in languages where functions are first-class citizens but where currying isn’t automatic (e.g. JavaScript).
- I started seeing composition everywhere! Objects, Data Structures, Functions, Types 😵.
- I began seeing types in new ways: as sets, as objects in categories, as documentation, as a domain modelling tool, and as a way of eliminating a whole class of bugs (and hence tests).
It didn’t take long for me to see the benefits of programming in the functional style, so I adopted some of its principles and patterns where appropriate in my day-to-day work.
That’s a wrap
2018 was a full year, and I look forward to my next set of challenges in 2019. I hope you’ll tag along for the ride.
Until next time, peace!