Engineering Alum's Textbook Teaches Python With Real-World Examples
NJIT alumna Dayrene Martinez, who earned her electrical engineering degree in 2018, recently published a textbook of Python computer programming after mastering the language as a systems engineer for defense contractor Raytheon.
Martinez co-authored the 420-page book, Applied computational thinking with Python: Design algorithmic solutions for complex and challenging real-world problems, with Sofía De Jesús. They met through a professional organization called Latinas in STEM Foundation. "This book is written by two Latina women in STEM which is something you don't see too often," Martinez noted. "With my personality, I just go with it. If there's an opportunity knocking, I would just take my chances."
Python debuted in 1991 based on an older language called ABC — a name chosen to indicate simplicity, but it didn't stand for anything. ABC's serpentine successor did not become common until later versions in the 2000s. Python today is one of the most widely used languages. It is known for being easy to learn but also thorough enough for serious applications — many other languages can fulfill one of those goals but not both. It's found everywhere from grade school classrooms and makerspaces to The New York Times, machine learning research and cybersecurity laboratories.
The book is heavy on sample programs and walks readers through every step to explain programming logic, with successive samples building on previous ones. Readers are also shown alternate methods to accomplish the same tasks, informed about potential problems that could arise and educated on how to fix those problems if necessary.
Martinez, who now lives in Tucson, Ariz., said she cared deeply for math and science as a child in Paterson, leading to enrollment at Passaic County College and ultimately to NJIT. While enrolled in Newark College of Engineering, she worked for Ying Wu College of Computing, assisting computer science Professor James Geller as a diversity coordinator. Her job was to perform outreach at public schools in underprivileged areas.
Geller is known as an ally for women and minorities in computer science. Thinking back to Martinez, "Why did I take her even though she was not even in computer science? Because she was so enthusiastic. She had the right personality for the job. And she knew enough about computing, as she just proved for Python," he said. "Sometimes personality is more important than degree program." One of his best students at software debugging was an electrical engineering major, Geller added.
Martinez said another of her favorite instructors was Assistant Professor Cong Wang, from the electrical engineering department, who taught her about controls engineering. She recalled that material from his class was helpful for questions about the PID controllers (proportional integral derivatives, which are a type of control loop system) and Kalman filters (algorithms that use several measurements over a given timeframe) in her Raytheon job interview.
Looking forward, Martinez intends to keep learning and writing. She is currently enrolled in a University of San Diego online program for a master of engineering degree in applied artificial intelligence. She is also interested in writing another book, this time on the subject of neural network models. As with Python, the new topic stems from her day job at Raytheon, which she said involves producing large amounts of data to train regression neural network models that can predict their system’s performance. She also uses statistical modeling and optimization techniques to develop and evaluate algorithms to improve performance, data management and accuracy. Most of the work is classified due to defense clients.
Teaching is also on the table. "My main goal and my dream is to be a machine learning expert. That said, I do like teaching," she said. "I teach the basics of machine learning to the new employees at my job and I also teach them how to make a neural network model … and I love it."