Josh Cohen’s Background In a Variety of Coding Languages Sets Him Up Perfectly for Mendix
Jeffrey Goldberg / October 25, 2018
For this installment of our rapid developer profile series, I had the pleasure to sit down with Josh Cohen, Programmer/Analyst at City of Santa Cruz, California, and have a conversation with him about how he was introduced to low-code development and how it has advanced his career and the way he solves problems.
How long have you been working with Mendix?
I have been working with Mendix for about five months. I’m not full time, just a few hours a day, here and there. I’m very new to the platform.
What was your background before you started using Mendix? What sort of programming were you doing before then?
I’ve been working in IT since 2000 and I have been trained as a database administrator, performing queries, and that’s how it started. From there, I created a lot of small tools and websites that are both internal and public facing. That’s the bulk of what I’ve been doing since I’ve been working in IT.
What sort of languages and what sort of databases were you using?
I’m trained in SQL Server and MySQL and I have, of course, dabbled in all the other SQL databases, but those are the two primaries that I’ve used in production. And from there I’ve used other low-code tools such as FileMaker Pro and Microsoft Access. I’ve also used Adobe ColdFusion, PHP, ASP.NET, and C#.
I fell into the role of business report writing, which doesn’t seem to be something anyone ever goes to school for or wants to do, but I’ve fallen into that category. So doing Crystal Reports and SSRS (SQL Server Reporting Services), as well as doing management on the back end of Windows servers and Linux servers.
It’s great to talk to someone who has variety. Tell me about some of the solutions you’ve been building?
In my previous career, I was a professional volleyball coach, and surprisingly enough, this is what launched me into the realm of IT and development.
There aren’t many off-the-shelf tools that can help with responsibilities that come with being a professional volleyball coach. I started creating all my own tooling and building my career from there. It started out with FileMaker Pro because that was easy and I didn’t have a lot of programming experience at that point. I was able to quickly build the things I needed for things like booster relations, inventory tracking, and game management.
When I transitioned into working in IT, I started building off of that experience and getting exposed to many enterprise-level tools. I built a full-fledged public-facing website for my last company, and I built. an application system for people looking for jobs. The app displays the jobs that are available and allows people to apply for those jobs. They had different forms for new hires, rehires, and out-of-state workers. Each group of hires had a unique form requirement, and within that, there was a back-end system, and that back-end system fed into the existing Legacy systems.
I have worked with lots of integrations with systems that were never meant to talk to anything else, injecting data from one system into another or moving data around and trying to automate everything as much as possible.
With FileMaker Pro, you had a taste of abstracted development. How did you discover Mendix?
Josh: I was not aware of Mendix prior to it being introduced to me here, five months ago, at the City of Santa Cruz. Our IT director had been working with a consulting group that works heavily with Mendix, EPI-USE, and when she came here to the City of Santa Cruz, she went to work with EPI-USE again because they had such a stellar track record with working with her and another government agency.
At the City of Santa Cruz, we don’t want to create tools that are from the ground up, like a C# tool, that might be built by one person, but then can’t be maintained once that person moves on because others don’t know the language.
We wanted to choose a low-code platform that would allow us to quickly ramp up without having to spend a lot of time learning the language itself. Mendix is quite intuitive, it was presented to us and off we went.
What was your initial reaction to the Mendix Platform?
It’s been amazing. For me, I think I have a really unique perspective because I’ve started using FileMaker Pro in the mid-’90s, so I’m quite used to the idea of a low-code platform and how powerful it can be. Sure, FileMaker Pro is not Mendix, it definitely has its limitations, but it also allowed me to create lots and lots of internal tools very quickly, that didn’t need to be maintained very much. I could just knock out things and move on.
With Mendix, it offers the same speed but it also offers a lot more flexibility. I feel like Mendix caters to the very basic, but at the same time also allows us to do advanced projects. I’ve really enjoyed how the whole system comes together. Mendix also offers a project management platform, and this has been really helpful to be able to capture feedback in an Agile environment with built-in control. I would say it’s what I always hoped a low-code tool would be, and I’m really enjoying learning more and more about it.
What steps did you take to learn how to develop with Mendix?
I didn’t have a lot of time to start training in the beginning. I jumped right into the platform and figured it out by getting my hands dirty. I have actually not done a lot of studying in the academy, although I did do some of the courses and they’re really excellent, intuitive and well laid out. But I think it really says a lot about the Mendix platform that someone who has done a project in another language or another platform, can come into Mendix and quickly go from zero to moving quite fast in accomplishing things. The platform is very intuitive.
I was able to take the things I’ve learned from traditional development and apply them to working with Mendix. And even though it’s a visual development environment, so it looks a little bit different, the principles carry over.
And I think the fact that it relies heavily on web technologies, is also very helpful. So being able to have gone through and built websites using PHP and ColdFusion, those things, I was exposed to all the different technologies that Mendix is using under the hood. It feels very familiar but it has the guardrails, or the safety rails, to keep you on target in terms of being able to tell you where your errors are. I like the debugger quite a bit. You can see exactly what’s happening and watch what’s going on. The platform is very well thought out to allow someone without any study time to just jump in and get going.
What was the first problem you solved with Mendix? Tell me about the app you have built?
We just went live with our first mobile application at the City of Santa Cruz, and we’re receiving great responses. We’re collecting a lot of data and I think we’re providing quite a wonderful service to our citizens.
Within the development process, there were lots of different people with lots of different things to say, lots of regulations, and lots of being very careful about how things are laid out. But even with the back and forth, we were ready to go after about three months. And that was from nothing to having a full-fledged application, which is quite remarkable actually.
One of the hurdles that we face was that most of the folks that we worked with, including our product owner, had never done Agile Project Management before. That was a difficult challenge in terms of how to structure it and how to work. But overall, the platform portal, the requirements management, and the agile components of the platform allowed us to have a central point to show everyone where we were at, where we were going and an easy system for them to provide feedback.
It’s totally changed the way we work. It’s open up a lot of people’s eyes and feels like using the platform is just become a natural piece of how the team and the government of Santa Cruz are working now.
Is there anything else that you’d like to share that we haven’t talked about yet?
One of the things that really sold me on the Mendix platform is that it feels like a Swiss Army Knife that has everything. We can handle really small tool requests that might come in. For example, last year, we had a request from one of our chemists coming from the water treatment plant where they had to export a CSV file out of the proprietary system and they had to do all sorts of manipulation to that file to get it into the government standards prior to them uploading it. And those requirements were quite rigid.
This chemist was spending tons of time doing data clean up and it was wasting time. The tool that we used at that moment was Microsoft Access, and that was not an enjoyable experience. Now, with the Mendix platform, if we were to approach that same project, it would go much smoother, it would be so much easier because of the options that Mendix allows us to do in regard to connecting to the systems and manipulating the data
These are the sorts of things that really excite me. I’ve loved working with the platform. I’ve loved what we’ve created, but I’m most excited about what we’re going to be able to do in the future to solve a lot of complicated problems with city government Legacy systems. To be able to have a tool that allows us to interact with those Legacy systems is going to be just gold dust for us.
And lastly, what is your favorite kind of pizza?
Josh: Well this is going to be quite controversial because we’ve asked this question here before and I’ve taken quite a bit of stick for it. But I like pepperoni and pineapple, and I know that there are quite a bit of people out there that just do not like pineapple on their pizza but I’m a lover of it.