The People of Cognitect - Cognicast Episode 100

AUDIO

To celebrate the Cognicast’s 100th episode, this week we talk to the entire Cognitect team about many topics. You’ll hear things about software, things about life in general and a little about growing cabbages. Our stories include advice and humor and hopefully will help you understand something about the people behind our company.

To all our loyal listeners, all our guests and to Cognitect itself, the Cognicast team thanks you for your support. Without you, there would never have been a 100th episode!

SUBSCRIBING TO THE COGNICAST

The show is available on iTunes! You can also subscribe to the podcast using our podcast feed.

You can send feedback about the show to podcast@cognitect.com, or leave a comment here on the blog. Thanks for listening!

CREDITS

EPISODE COVER ART

AUDIO PRODUCTION

PRODUCER

Our intro music for this episode is Thumbs Up (for Rock N' Roll) by killthenoise with Feed Me which was used under a Creative Commons License.

We close the show with an excerpt from Cochichando, a Brazilian Choro composed by Pixinguinha, João de Barro and Alberto Ribeiro in 1943, and performed by David Chelimsky in 2016.

To celebrate our 100th episode, we talk to all the people of Cognitect.

TRANSCRIPT

CRAIG: Hello, and welcome to Episode 100 of The Cognicast, a podcast by Cognitect, Inc. about software and the people who create it. I'm your host, Craig Andera.

Well, here we are at Episode 100. A little bit hard for me to believe that we've done 100 episodes, but we have, so thanks for coming along for the ride. I know that there are some of you out there that have actually listened to every single episode, and that's amazing to me. Just hope you enjoy this one, listening to it as much as I've enjoyed creating it.

Really only one announcement for you today, it has to do with a new feature that we're adding to the Cognicast, and that is transcripts. Within a few days of launching an episode, from now on we will be adding a text transcript to the show post. You can find that on the show home at cognitect.com/cognicast. You'll be able to go out there and see a full, word-for-word transcript of everything that was said. We think that'll make it easier for people to search the content and maybe even to consume it in ways other than just listening to it. We certainly hope you find it useful.

We've gone back and provided transcripts for every episode starting from 94. That kind of marks the beginning of the 2016 season. No plans right now to go back and add transcripts for shows prior to that, but certainly for every show going forward from 94, we will have that within a few days of the show going live. We're pretty excited about that, actually.

We are also excited about this show. Seeing as it is Episode 100, we decided to do something a little bit different, but I'll talk more about that as we get into the show itself. For now, I will stop here and we will go on to Episode 100 of the Cognicast.

[Music: "Thumbs Up (for Rock N' Roll)" by Kill the Noise and Feed Me]

CRAIG: Greetings, everyone. As I record this, it is Friday, April 22nd, in the year 2016. This is, of course, the Cognicast. In fact, it's Episode 100 of the Cognicast.

As I mentioned in the intro, we decided to do something a little bit different this time around. Ordinarily, we have a conversation with one or two people. But, as we kind of thought about something we could do to commemorate this special milestone for us, Episode 100, one of the ideas that came up was to talk to every person in Cognitect and get their answers to some questions that we came up with, and that's exactly what we did.

I just want to say a couple things first, though. First of all, this episode was an enormous amount of work. Not so much for me. I got to go around and talk to everyone in the company. It was amazing to hear people's really thoughtful answers to these questions that we'd come up with.

But, this episode was still an enormous amount of work, particularly for Russ and Daemian, who did the editing work. As you can imagine, cutting together what wound up being something like maybe 11 hours of audio, to try to fit it into our usual show length of about an hour, was just a huge job, and so enormous kudos to them and to the rest of the podcast production team for pulling this together.

I started everybody off with a question we always start the show off around an experience of art. We kind of start from there, but there were a bunch of questions I asked everybody. Honestly, it was an almost impossible task to limit ourselves to an hour's worth of content simply because everybody, in my opinion, had really interesting things to say to most or all of the questions.

We certainly hope that you will enjoy this little insight into the group of people that we work with. We say on this show that the show is about software and the people that create it. Well, we're a company that creates software, and we're made up of people.

Everybody at the company is involved in the process of creating software, whether that's directly through the consultants or indirectly through the many, many people that make that possible, without whom their effort we wouldn't be able to do it, the people in accounting, the people in sales. Everyone in the company helps to make software in some way, and they are all amazing.

I think that's enough setup. Let's go ahead and hear from the people of Cognitect.

CRAIG: –and then I'm going to ask you for some stories, if you have any. Then we'll come back to the two questions that I mentioned. The first question should hopefully be the easiest one. What is your name and job?

CARIN: Oh, my name. Yeah, Carin Meier, and I am a programmer, developer, or engineer - however you want to say that.

CRAIG: Tell us about an experience in art.

CARIN: I mean I like all sorts of different art, but one that just came to the top of my mind today is Sunday in the Park with George. There's the musical, Sunday in the Park with George, that's actually based on the painting Sunday in the Park. It's the French name of it, but it's pointillism. I think it's George Seurat.

He did pointillism, which is you make a picture by using all these little dots of color. Then you look back on it, and then it emerges into a scene in the blending of the light and everything. He's an interesting artist, I think, in respect to our profession where you start with these little bits of things, and then you build up into something beautiful.

MIKE: My name is Mike Nygard. My job at this point in time is VP of Customer Solutions for Cognitect.

When we talk about art, we're talking about sort of the cultural edifices or the creations that we all get to share in as part of our shared humanity. And so, I'm a big fan of classical music, music from the romantic era, sculpture, poetry, but I also include some of our scientific achievements as cultural achievements. I think you can regard these creations of human intellect as edifices, so I find art and beauty in calculus, fractals, and particle physics.

DIANE: My name is Diane Butler, and I am the HR manager here at Cognitect.

My oldest daughter is an artist, and most of the art that I've been privileged to own in my adult life has been done by her. As a matter of fact, the piece that hangs over my desk here at work is one of hers.

DAVID N.: My name is David Nolen, and my job is I'm a software engineer at Cognitect.

I went and saw Stockhausen's KLANG performed at The Met. It was just really awesome. It was a 40-minute virtuosic harp piece, so that was pretty cool.

ANDREW: My name is Andrew Rankin, and I work on the product team here at Cognitect, and I do a lot around AWS and making our products work perfectly in AWS, and a lot around operations, so keeping things up.

I love cars, and I find a lot of beauty in cars. More recently it's been more about the mechanical aspects of cars, but maybe a year or so ago, my wife and I – actually my wife saw it and said we should go see this, which was a Porsche exhibit in the North Carolina Museum of Art. It was maybe 20-something cars, but it showed the progression over the years. There were a bunch of racecars and mostly the standard Porsche 911 style body, how it kind of changed over the years. It showed how something as simple as this original design could kind of change over the years.

RICH: My name is Rich Hickey, and my job title is CTO of Cognitect. Probably a better title would be Chief Inventor or something like that. I mostly primarily work on the design and implementation of Datomic and Clojure.

I guess I had my fondest memories of two things that are pretty different. One would be seeing some of the big, awesome concerts back in the '70s, you know, Yes and Led Zeppelin. Those left pretty big impressions on me as a teenager. The other would be definitely the Picasso Museum in Paris, which is just unbelievable.

CRAIG: All right, so do you have a personal quirk that makes you better at your job?

RICH: Yeah. I'm not infatuated with computers. I'm happy to walk away from them and work with a piece of paper, a notebook, and a hammock. I think a lot of people involved in programming are sort of really into the technology for its own sake, and my quirk would be that I'm less so.

CRAIG: Okay. Great. What's one important thing you've learned at Cognitect?

RICH: It's not a single fact, but I think the biggest thing for Cognitect, for me, is learning on an ongoing basis, and I have plenty more to do, about how best to work with people, value what they do, help them grow, and help them let me grow. I think that's something that everyone at Cognitect values highly and considers a process as opposed to something that we just know.

JUSTIN: My name is Justin Gehtland, and I am the CEO.

CRAIG: What's one important thing you've learned at Cognitect?

JUSTIN: Keep talking.

CRAIG: Really?

JUSTIN: Listening is a super important skill and one that is not practiced nearly enough by most professionals. I will grant you that that is a super critical skill, but I knew that one before Cognitect. It wasn't until I began an agile consultancy in its earliest days and a distributed organization in its latest days that I found out the importance of essentially filibustering an idea until people tell you to shut up. I think that most software projects go off the rails because people don't talk about what's going on enough, and I think most companies suffer from a lack of communication, even when they think they're doing it to the point of exhaustion. And so, that is a lesson that's been drilled into me over and over and over again.

LUKE: My name is Luke VanderHart, and I am a software developer and a consultant with Cognitect.

CRAIG: What have you learned at Cognitect?

LUKE: There is always more estimation to be done, even when you think you're done. Kind of like Hofstadter's Law of Recursive Estimates, it will always come back to bite you and you can never do too much thinking about it.

CRAIG: How do you balance that against never starting?

LUKE: Well, I didn't say, "Never start." A lot of times you can't even – it's through the process of starting and actually engaging with the problem that you start to learn these things. So, if you never start, you're in an even worse position. I don't have a great answer, but simply being aware of it is something that I think is better than not to be aware of it.

MARC: My name is Marc Phillips, and my job is an ever-rotating set of titles. I believe when I started what was advertised was Agile Project Manager. It has also been called a coach, but very different from an agile coach. But often, really, that's not remotely the job that I do on projects, and even projects isn't a great way to put it because they're often partnerships with either brand new startups or global enterprises. And so, it really morphs depending on what is needed by that partner and what is trying to be built.

CRAIG: What's one important thing you've learned at Cognitect?

MARC: Nobody knows anything. Everybody is completely making up and faking whatever they're doing. That's not in a bad way. I get this view from just all the companies that we've worked with. Everyone in all these positions, again, everyone is doing the best they can, but they're often guessing. Again, that's okay.

The biggest differentiation we've seen in the companies we've worked with that have been successful, either in our partnership with them or just watching them go along, are the ones that at least at some level know they're kind of making it up as they go along and that the idea they have now is the best idea at the time, but that may change. It's the ones that, when people really feel like, "Hey, I know what I'm doing and you're just going to have to get in line," and don't necessarily listen to feedback or are open to that, then that's when they tend to run into problems. But really, I've been amazed at the people and the companies that, from the outside, you think, "Whoa, they really know what they're doing," and then you meet them and it's like, "You know what? It's just a bunch of people who are just doing the best they can."

NAOKO: My name is Naoko Higashide, and I am one of the coaches at Cognitect.

CRAIG: All right. What's one important thing you've learned at Cognitect?

NAOKO: Just one? Be myself.

CRAIG: Was there any particular experience that drove that home for you?

NAOKO: Yeah. Prior to Cognitect, I was at a very difficult company. It was a little crazy. We weren't allowed to be ourselves, and I didn't realize that until I was there for a little bit. When Relevance, then, contacted me and I started talking to a whole bunch of Relevancers, that's when I realized I felt comfortable, like I felt I belong. And so, I think that's really – I mean it's obvious to say that that's important, but I think you can say that at the workplace too.

CRAIG: How do you think we–for whatever value of "we" you'd like to answer for–can make software or the software industry better?

NAOKO: Hmm. I think knowing the balance between execution and design. Something that I've been thinking about more lately where, you know, back in the days it was design phase and then this phase, that phase, very much waterfall, and then agile picked up. We love agile, but one of the things sometimes – it all depends on the project type, but I do think that some projects require more design time up front, thinking time, or hammock time upfront to be able to be building the right thing. But, that doesn't mean we have to drop agile either. It's the balance.

CRAIG: Hmm. I like that answer a lot.

ALEX W.: My name is Alex Warr. I'm the director of business development at Cognitect.

We touched on this a little bit with our most recent Cognation consulting practice retro, but it's something that I've felt for the last several years and something that I think we do a really good job of, even as an expert technical team. Understanding that it's almost never, an impossible problem is almost never, an impossible technology problem, and it's almost always a difficult people problem. The more that you can live in that reality, understand that, and sort of embrace the opportunities that that presents, the better off you're going to be making yourself happy, but also delivering incredible value for customers.

MICHAEL P.: Michael Parenteau. My job: I am a designer.

CRAIG: What's one important thing you've learned at Cognitect?

MICHAEL P.: Software is about people.

CRAIG: How can we make software or the software industry better?

MICHAEL P.: By remembering that software is about people.

FOGUS: My name is Michael Fogus, and I am a consultant working with clients to help them build excellent systems.

CRAIG: Do you have a personal quirk that makes you better at your job?

FOGUS: I think that maybe. I don't know. I don't know that I'm any different than anyone else, but I think one thing that does help is that I get a little bit obsessive about details. But, at the same time, I'm able to – I can obsess about the details when I need to be. But, when I realize that it's time to step back and take a look at things from a larger picture, I can sort of divorce myself from those fine, little details, obsessing over those fine, little details exactly when I need to. I guess that's a skill that has helped; I found has helped over the years.

CRAIG: All right, so how can we, for whatever definition of "we" works for you, make software or the software industry better?

FOGUS: I might be a little bit biased in this answer because it's something that I find personally interesting, but I do think that there is some benefit that could be brought to bear. That is: Knowing the history of our industry, as a software developer, I feel like too often I run into people who don't really understand that the things that they know or the tools that they're using or that they're excited about very often have precedent in not one, but dozens of other programs, frameworks, systems, papers, or ideas in the past. I really think that it behooves us, as programmers, to really understand what came before so that we can make better informed decisions about what we need to do next. Minimally, understanding what came before helps with the hype noise. It makes it a lot easier to understand when you're dealing with hype as opposed to genuinely interesting and exciting technology.

ALEX M.: I am Alex Miller, and my job is to help catalyze the Clojure– This is awful.

CRAIG: Start over if you need to.

ALEX M.: I'll just totally blow that one….

CRAIG: All right. What's your name and your job?

ALEX M: My name is Alex Miller, and my job is to help out with Clojure the language and also Clojure the community.

The reason I came to Clojure in the first place is that I'd been doing software for well over a decade, and I’d built big systems and different kinds of systems. It had gotten to a point where I was just – the complexity involved in programming was exceeding my desire to make programs. I just was at a threshold where I was really unsatisfied with sort of my ability to make programs that sort of had a level of complexity that I thought was manageable. For me, Clojure was a ray of light.

ALEX R.: My name is Alex Redington, and I had been at Cognitect from August of 2010 to March of 2016, so a few months shy of six years. I'm going to be moving on to a position at Eligible.

CRAIG: All right, congratulations for that.

ALEX R.: Thank you.

CRAIG: Do you have a personal quirk that makes you better at your job?

ALEX R.: Yes. I'm stubborn.

CRAIG: Okay. That's a good answer. What was one important thing you learned at Cognitect?

ALEX R.: If I were going to pick one important thing that I learned at Cognitect, I think it would probably be the value of working with immutable data, which is going to sound totally BS and markety to some people, I'm sure, but I don't care because it's actually a really important thing that I learned. The reason is that you can say working in software with immutable data is valuable for these reasons. When you sit down and you do it for a period of multiples of years, you become aware of how ridiculous it is to not work in that kind of data management and how many problems that are difficult or head-scratchy or uncomfortable become totally trivial once you move to working with immutable data structures.

CHRIS: My name is Chris Redinger, and I'm a software developer.

I think that the most important thing I've learned is really how to design good software. I get to work daily with Rich, now, and we really sit back and think about what we're going to solve, what problems we're going to solve. Rather than just producing something, we come up with an actual problem that we're trying to solve and then we solve that problem.

PAUL: Sure. My name is Paul deGrandis and I am an engineer and architect here at Cognitect and all around technology fellow.

I would say one of the most import things I've learned at Cognitect is how to be a great follower and also be a great leader and be able to turn pretty quickly between both of those knobs.

JEN: My name is Jenn Hudson, and my job is CFO.

One important thing I've learned–and I don't know that I didn't know this before, but I know it in a different way now–is just communicating with different people requires different tactics all the time. I think this was the first job that I had that I needed to be able to communicate effectively to people who are in the IT world on a day-to-day basis, trying to communicate my world to them.

A lot of times things that I know, I know they are ignorant of and, therefore, often don't care about. So, learning to be able to communicate things that they need to care about, regardless of whether it's something they know or don't know; learning to be able to do that effectively is something I've tried real hard. It wasn't easy, and I think that I still don't do a great job of it, but I can see little bits and pieces of, "Oh, yeah. That person gets that now," or they'll ask a question before doing something. I'm just like, "Okay. I made an impact somewhere there."

STUART H.: My name is Stuart Halloway, and I am a founder at Cognitect.

CRAIG: All right. How can we make software or the software industry better?

STUART H.: We have a big skill gap between the skills that are knowable and that we could have and the skills that we actually have. It's not like the skills don't exist out there and it's just starting from a clean sheet. There are a ton of things out there to be known that are not known, and I think it's just from the growth of the industry.

One of the things that I frequently pose as a hypothetical is if you took a particular company whose job it was to make software and you radically restructured it so that 30% of people's time was spent skilling up and 70% of their time was spent writing software, would there be a turnaround point where that organization would lap a more traditional organization where that ratio was much more production and less education? I think that providing opportunities for people to increase their skills and have more leverage is really big.

TIM E.: I am Tim Ewald, and I am an engineer who works on our product team.

I think the biggest thing I've learned at Cognitect is the importance of immutable state for building not just programs, but entire distributed systems. The shift from mutable to immutable state is, I think, way more important than any other dimension that we debate about in software engineering, so way more important than static versus dynamic typing, whether or not to do test driven development, or any number of other things.

TIM B.: My name is Tim Baldridge. I'm a developer at Cognitect.

The biggest thing is just slowing down. This is something. I don't mind sharing this with people. This is something that comes up in evaluations a lot of times is that I'm a type of person that loves to sit down and just code, and I do that a lot.

I think the one thing I've tried to focus on the most since coming to Cognitect is to slow down. It's okay to, if you have a pet project, not code for weeks, months at a time. It's the whole hammock time thing, I guess, sitting and thinking about it more than actually diving in and doing something. But, I think even when we go and work for clients, it's even more important there to sit down and think of all the possibilities of a situation before just diving into what may be the obvious at that time.

What goes along with that, too, is kind of playing the devil's advocate in your own mind and saying, "Hey. This tech looks cool. It fits our situation perfectly," but developing the self-control, if you will, to basically say, "I'm not going to make a decision about this until I've at least looked at two other technologies that would probably work as well. Not doing that just for the sake of doing it, but doing it to make sure that you're not completely enamored by some new tech that you found and then you think, "Oh, this is perfect," but really doing your research and thinking before jumping.

CRAIG: All right. How can we make software or the software industry better?

CARIN: Hmm. That's an interesting one. I would say to continually beat the drum for simplicity because I think everyone gets kind of wrapped up in the newest, latest thing, and it can explode into complexity of containers, JavaScript libraries, and it's always good if people are stepping back and saying, "Do you really need that?"

DAVID N.: How can we make the software industry better? I think that's kind of a broad question. There are so many things to work on, whether that's just about people or just about technology. I think there are just a lot of things to work on there. I don't think there's a simple answer to that.

CRAIG: Okay. That's a very Cognitect answer, if you ask me, and it's a good one, which is there's no silver bullet, right? Like, duh. You think you have one problem. You actually have 30 problems, right?

DAVID N.: Yeah.

STUART S.: My name is Stuart Sierra and I am a developer and consultant.

CRAIG: What's the best thing about working at Cognitect?

STUART S.: You know it's a company that really seems to value doing things right, whether that means doing things that are technically sound and well thought out or making decisions that are ethical in the way we do business and the people we work with, and trying to do the right thing to help our clients even if the clients themselves are making that difficult. Everyone is genuinely trying to do better most of the time. No one is just clocking in, doing their work, and clocking out.

YOKO: Okay, so my name is Yoko Harada. I'm a software developer.

CRAIG: What's one important thing you've learned at Cognitect?

YOKO: That's a tough question. I learned a lot at Cognitect. Actually, this is the very first job in the U.S. for me, so it was really, really different. I didn't know American style, so American working style at all, and I firstly learned sometimes my questions to my coworkers sound weird. So, in those days, I asked Jamie a lot and occasionally she couldn't understand my questions. So, I learned a lot of American style working, so American style job.

MARSHALL: I'm Marshall Thompson. I have a few jobs at Cognitect. I was originally hired as a business development associate, but I've sort of since transitioned to a bit of a hybrid role where I'm doing some sales engineering, presales technical support, and I'm also a technical account manager for Datomic customers.

CRAIG: What's the best thing about working at Cognitect?

MARSHALL: That probably varies on a day-to-day basis. But, if I had to pick one thing, it's probably the fact that I get to interact with both just the brilliant people at Cognitect who are not only technically brilliant and sort of these amazing backgrounds in literature, art, science, and all these things, but also just really good people. And, at the same time, I get to interface with a large proportion of our clients, whether they're on the Datomic side or the consulting side. So, I don't feel sort of sequestered, which my background in biological sciences before this, you could get kind of lonely in the lab. It's really cool to be able to have conversations about cool, interesting, new ideas with a different group of people every day or every week.

JENN: Jenn Hillner, and I think my official title is Sales Lead at Cognitect.

CRAIG: What's one important thing you've learned at Cognitect?

JENN: That you are never too old to learn a lot of new things.

CRAIG: What's the best thing about your job?

JENN: I am given a pretty big voice in sort of what we do here and feel like I'm empowered to affect change, which is something that you don't get in a lot of places, and given also a lot of independence as far as how I approach my job, which I like a lot.

CRAIG: What's the best thing about working at Cognitect?

JENN: Definitely the people. I'm getting to know people more and more every day, and there's a lot of people I don't get exposed to all the time, so having things like Cognation gave me a chance to be exposed to people I don't really interact with on a regular basis. Even though it's such a diverse group of people, there's sort of a unifying characteristic of true mutual respect, a lot of learning, a strong desire to kind of help educate too and teach in a way where I haven't encountered a lot of ego with that. It's just people truly being invested in sort of raising the tide in order to raise all boats.

CRAIG: Tell us your name and what you do at Cognitect.

DAEMIAN: Daemian Mack, Developer.

CRAIG: What do you like most about your job?

DAEMIAN: Most? I would have to say the extent to which I'm treated like an adult.

KIM: I'm Kim Foster, and I'm Director of Recruiting for Cognitect. The reason I've been a recruiter my whole career is that I really think people should do the work that makes them happy. I truly believe that it's my job to help Cognitect, as a company, and candidates figure out whether or not that's going to happen in a specific role. It's really cool. There are people around the Durham area that I placed 10, 15, 20 years ago who are still in the jobs I placed them at.

CRAIG: That's cool.

KIM: Yeah, and so that's really exciting to me. I feel like I've had an impact.

MIKE: That one is super easy. The thing I like most about my job is the people that I work with. I make this analogy to when I was in college. People would come up with these crazy ideas. "Hey, I heard a cryogenics lab is shutting down and they've got a one million BTU chiller that they're just going to throw away. We should do something with it."

All of us go, "Yeah, let's go get it," even though we had no idea how to deal with cooling systems or what we were going to chill with a million BTUs or whatever.

Or, someone came and said, "We should build a life-sized sperm whale in Milliken Pond," and we did, complete with rolling eyes, flapping tail, and all of this stuff.

We knew that there were things we didn't know, and we knew there were things we didn't know how to do. But, we also kind of believed that there was nothing we couldn't figure out or learn how to do. I spent about 20 years of my career looking for a company full of those people, and what I found in most companies is people who had defeated themselves before they even began. They were in love with their limitations.

When I got to Cognitect, which was Relevance at the time, I found a company full of people who were willing to be audacious, tackle anything, and know that they could figure it out. I love that environment.

RUSS: I am Russ Olsen. I am the vice president of consulting services at Cognitect.

What do I like most about Cognitect? The people, the people I work with.

I'm not sure why you get to ask all the questions all the time. Craig, what's one thing you've learned at Cognitect?

CRAIG: I don't know if I can say it as, like, one succinct lesson. Really, I think what it is, is it's an existence proof about what a really good team of developers can do. I mean I like to think of myself as a very good developer. I feel like I'm good at software.

RUSS: I think you are.

CRAIG: Thank you, and I'd been lucky enough to be associated with other groups of really good developers at times. I'd been at Microsoft. Whatever you think about the company, if you've been inside it, there's no shortage–

RUSS: Very smart people, yeah.

CRAIG: There's absolutely no shortage there. I was at a company called DevelopMentor. The same thing: really smart people. But, for all that experience, when I came to what was then Relevance, I was completely blown away by the speed at which the people here could create really good software. It was amazing. You know, to be conservative, it was four times as fast as I'd ever seen anyone make something working, and not only working but working well, before. I'd never seen anybody move at that speed at that level of quality.

I think, for me, what that showed is that the team really matters. Other people have said this: Software is about people. I've said it many times. It really is. One of the ways in which it's about people is that good developers make a real difference. You really can do better with a set of people that really know what they're doing.

RUSS: Do you have a personal quirk that makes you better at your job?

CRAIG: Maybe. You might have asked somebody else that. What I would say is that I have a combination of traits that is common here at Cognitect, but unusual, in general. The typical picture of a developer–and I don't think it's really correct, but it's stereotypical–is that they have a lot of technical ability, but very little social ability.

RUSS: Right.

CRAIG: And so, I think a lot of the people here, and I would count myself among them, have both, the ability both to be–if I can be modest a little bit–excellent technically, but also to be the sort of person that, if they wanted to go into sales, marketing, or some other discipline which typically requires a very high EQ, emotional quotient, that they could do that as well. And that the confluence of those things, I think, definitely makes you better at consulting, but I think it makes you better at software, in general because, as many people even on this episode have said, software is about people.

RUSS: About people.

CRAIG: Exactly.

RUSS: Yes.

CRAIG: And so, being good with people or at least maybe at least being good at communicating with people. Educating people is a super power and it's multiplicative, right? You could be good at communicating, and that's great. You could be good at technology, and that's great. If you're good at both, you're much better than the sum of those two things.

JOE: My name is Joe Smith, or Joseph Smith, or Joe R. Smith, whatever way I can make it sound semi original. I'm a software developer at Cognitect.

CRAIG: What are you doing outside of work right now that you're most excited about?

JOE: Well, it's spring, so I spent a good part of yesterday evening moving a good chunk of ten cubic yards of compost from my driveway into my backyard. That's going to be the hobby for the next month and a half.

On the job side of things, not job side, but things related to what I do every day, I've been writing a lot of J, which is a successor to APL, and I've been having a lot of fun with that.

CRAIG: Wasn't APL the one with the crazy keyboard you had to use?

JOE: Yes. APL was originally designed as a way to express programs basically on a chalkboard. It kind of predates personal computers. It does predate personal computers, so the intention was a concise notation for programming. J is very similar to APL except it uses an ASCII character set, which makes it, one, a little bit more practical, but it also embraces some concepts from function level programming, which is a constrained form of functional programming.

BRYAN: My name is Bryan Engle. I am the product marketing director or a.k.a. The Marketing Guy here at Cognitect.

Outside of work, I'm working with the North Carolina Interscholastic Cycling League to build out a middle and high school mountain biking league that will start in the spring of 2017.

BEN: I'm Ben Kamphaus, and my primary role, I guess, is support engineer for the Datomic team, and then I do miscellaneous other stuff as well.

Well, I think, with the software industry, I mean I think it's by necessity it can be a bit of a political question for me, but there's no question that increasing diversity, increasing the number of people who have a seat at the table who can influence what's going to happen, what the next steps of technology look like, I think that's huge.

BENOIT: My name is Benoit [Fleury], and I'm a developer at Cognitect.

CRAIG: Any quirks that make you better at your job?

BENOIT: I think my attention to detail, wanting to go to the bottom of things and really understand what is going on, and to not be afraid of saying I don't understand something I think I have mirrored.

STUART S.: Better at my job? I'm sure I have lots of quirks that make me worse at my job. A quirk is I don't actually like writing code, and so I will go to fairly great lengths of thinking and designing and working things out on paper before I sit down to actually write the code.

MARSHALL: I'd say probably the fact that I'm pretty hard to get to shut up.

DIANE: I am hyper vigilant to an annoying level.

CRAIG: Do you have a personal quirk or a personality attribute that you think makes you better at your job?

DAEMIAN: I don't know when to give up.

DAVID C.: I'm David Chelimsky. I call myself a software developer. I think the job title is Software Engineer.

A habit? Maybe this is a quirk, which I sometimes fear is actually more annoying than I imagine it is productive. But, when I'm in the middle of a conversation involving two other people, I hear one person say something to the other and I sense that the other person's response indicates that the second person didn't really understand what the first person said, I'll interject and try and qualify that. Some nontrivial percentage of the time, that actually helps to clarify things in the conversation, so I'll go with what one. I'll call that a quirk.

CRAIG: How can we make software or the software industry better?

DAVID C.: That's a tough question. I mean I know how we could do that in the micro in terms of the projects that we're on, which is, in a sense, to just keep doing what we're doing, working the way we work, which is not different from what any other consultancy would say is the way they work.

We try to solve the actual problem and do it in a way that's going to leave the customer in a good place when the relationship comes to an end. And, we try and help them understand what the real problem is that they're trying to solve. But, reiterating, I suspect if you talk to anybody who works in consultancy, they'd say a similar thing.

CRAIG: Well, do you think there's anything different about the way Cognitect does business or builds software that can result in a better world, whether that's just for software developers or in general?

DAVID C.: It's hard to answer that question because I haven't worked for a million consultancies, so I don't know how they all work, nor have I hired any of them. I think that we have an aim. This goes back to what I was saying before. I think we have an aim to solve the problem with the best tool for the job. Sure, we're usually going to go for Clojure, and we're usually going to go for Datomic, or at least keep those in the list of available tools, and people come to us for those. But, I mean even at a more granular level like which libraries to use and which approaches to take in an architecture. I think we do a good job of balancing all that in light of what might be our own biases.

CRAIG: What do you like most about Cognitect?

DAVID C.: I work with a bunch of very intelligent and, yet, humble people. Especially in my first year here, I suffered deeply from imposter syndrome. I'm finally kind of getting past that. But, a lot of how I've been able to sort of deal with that is that the people who I admire and look up to–in the sense that I think I can learn something from them, which is pretty much everybody else in the company–nobody is particularly arrogant or makes me feel small when I ask stupid questions, which makes me feel free to ask questions that I might otherwise refrain from asking for fear of looking stupid, if that all makes sense.

CRAIG: All right. What are you doing outside of work right now that you're most excited about?

CARIN: I have a dream one day to successfully grow cabbages, which I have not yet really been able to realize. I've tried year after year after year. Something always happened; like these flea beetles come and eat it or a deer will come by and just eat the whole thing.

Every year, I love this time of year because I can dream. I have the seeds, and I plant them. You know, I have the potential.

CRAIG: What's the last book you finished?

FOGUS: If you give me five minutes, I can finish Gravity's Rainbow.

CRAIG: Okay. All right, we'll credit you.

FOGUS: I'm really close, really close.

CRAIG: You're that close. Got it. All right. It's not like Zeno's paradox, though, where every day you read half of what's left, is it?

FOGUS: No.

CRAIG: Okay.

FOGUS: It felt like it sometimes.

CRAIG: All right. Okay.

If you were an animal, what would you be?

STUART S.: A cat.

CRAIG: Why?

STUART S.: I'm aloof and I like to sleep a lot.

CRAIG: How many emails are in your inbox right now?

JUSTIN: One, two, three, four, five, six, seven, eight, nine.

CRAIG: How many emails are in your inbox?

PAUL: Twenty.

CRAIG: How many emails are in your inbox right now?

CHRIS: Let me look – so 20.

CRAIG: How many emails are in your inbox?

TIM E.: Between ten and 20,000.

CRAIG: How many emails are in your inbox right now?

JENNIFER: Unread, there might be 2, and less than 20.

CRAIG: How many emails are in your inbox?

STUART S.: 24,556.

CRAIG: How many emails are in your inbox right now?

MICHAEL P.: Well, let's see here – down to 55.

CARIN: What was it, like the email came out? Like, if you could give advice to yourself when you went back and, you know, five words to your younger self, what would it be?

CRAIG: Mm-hmm.

CARIN: It would be, for me, don't eat the dog biscuits.

JUSTIN: The weirdest moment in the company's history was the time when a client owed us $25,000 and he was driving up from Charlotte to come and do the next iteration kickoff meeting. He asked if he could pay us in cash, and I said, "Sure. A cashier's check would work."
And he said, "No, I mean cash." And I said, "No. Under no circumstances will I take $25,000 in bills from you, but could you bring it so I can see it? And then you can drive over to a bank and turn it into a cashier's check, and I'd be happy to take that."

JENNIFER: My name is Jennifer Crichlow, and my job is the accounting manager, which is a fancy term for a bookkeeper, which means I basically spend all the company's money.

CRAIG: Awesome. I think the rest of us do occasionally pitch in and spend some of it, but I know exactly what you mean. You've got to keep us in check, though, right? You're the one that actually pays the bills for all the other toys, right?

JENNIFER: Exactly, I pay for all the toys.

CRAIG: This next one is one that I definitely want – so it's a question that might sound like it's aimed at the devs, but I'm actually interested in everybody's answer to this. It is: If we lived in a world where computers and programming didn't exist, what would your day job be?

JENNIFER: Oh, well, see, my day job probably wouldn't have changed that much because everybody needs accounting people.

CRAIG: I think of that as a fairly computer intensive task. There are a lot of numbers floating around. I'm curious, for someone that does this all the time, do you think that your day-to-day work would be significantly different if you couldn't rely on computers?

JENNIFER: I think it would because, to a certain degree, you would have to do everything on paper. You would write your incomes, your outgoings, your checks and balances. Everything would be done on paper, so I'd kill a lot more trees that way.

CRAIG: True, true, true. All right, what are you doing outside of work right now that you're most excited about?

JENNIFER: We are working on a production of The Little Mermaid that is going to be performed in the middle of May, and we are getting the costumes finalized, the set work done, and all that kind of fun stuff.

CRAIG: When you say "we," this is your daughter's dance studio, right?

JENNIFER: That's correct.

SAM: My name is Sam Umbach. I am a software developer at Cognitect.

I think, for a very long time, I saw myself, others saw me as sort of very analytical, systematic, and just being that kind of a thinker, like a mathematical thinker. That caused me really to ignore intuition or devalue it, feel like that was something that is sort of less valuable than something I could sort of rationally lay out and plan ahead of time.

Certainly, what I've learned, and this happens in software development all the time, of there are a lot of times when you just have a sense of something, especially in debugging of, "Eh, I think it's this. I think it might be this that goes wrong," or where you want to pursue. I think that judgment, that intuition, is really, really powerful and, yeah, a thing that you can develop and exercise. You can also let it run away from you.

That's where I really love Stu's Debugging with the Scientific Method talk. I think that's one of the best talks that I've seen ever, really, honestly. I just keep going back and watching it.

I think the two can marry very well, which is to have this process, to have this framework to work within, but also to give yourself the leeway to go and use your judgment. Like, when you're developing a hypothesis, that's a creative process. That's something that's intuitive, inherently. Yeah, embrace it. That really is, to me, a piece of advice that I keep having to remind myself of.

CRAIG: Do you have any good Cognitect stories you'd like to share?

NAOKO: Around the first week of me joining then Relevance, it was at the end of the day and Alex Warr walked by saying the draft starts at 6:00, or something like that. This was mid to late August, so in my head I immediately thought, "Oh, my God! This is so cool! Relevance does fantasy football," like, "How do I get into this, their league?"

** I'm like, 6**: 00 o'clock, draft starts, and I got a little excited. I'm like, "I have to talk to people," because I'm brand new, you know, like I'm definitely interested.

Then an email came out from Alex saying something like DD draft or something like that. I'm like, "DD draft? It's not FF draft?" I'm like, "Huh?"

Then, you know, long story short, it turned out to be Dungeons and Dragons or some kind of game draft that they were doing, and here I was excited about joining a fantasy football league. And so, therefore, the next year I started a fantasy football league at Cognitect, and it was a massive failure. Only three people actually paid attention, you know.

RUSS: When I was first at Cognitect, I was probably only here a few months, and we were having a company meeting. And so, I was trying to get from the Washington, D.C. area to Durham, and I was flying. It was one of those airline nightmares. They kept us hanging around for five or six hours, and it's an hour and a half flight, maybe.

Finally, I made it to the company meeting, and we were having dinner or something at some restaurant, and so the whole company, a lot of these people, whom I didn't know. I walked into the restaurant, kind of dropped my bag, and was looking around for a place to sit. Stu Halloway came up to me and hugged me.

I am not a touchy-feely person. I am not the kind of person who hugs his friends. I love my friends dearly, but I don't typically hug them. It occurred to me, as we were driving down here, that a substantial portion of the people in my life, whom I do hug, work at this company.

CRAIG: Yeah, same here.

STUART H.: Definitely the thing that I like most about Cognitect is the people and the atmosphere of working here. This has been something that has grown and changed, as the company went from being tiny, to being a little bit larger, to being mostly located in one place, to being geographically distributed. But, across all of that, my friendships are predominantly work friendships, and they are some of the deepest and most meaningful relationships that I've had in my life, possibly partially because I'm a workaholic.

CRAIG: What do you like most about Cognitect?

ALEX M.: I am always fascinated by the interests and hobbies and things like that that Cognitect people seem to have outside of software and sort of such a deep level of knowledge in all manner of arcane areas, and I love hearing about all that stuff. It makes for fascinating hallway conversation. I think that's one of my favorite things.

CRAIG: What are you doing outside of work right now that you're most excited about?

BENOIT: I had a chance to do, like, five or six years of art school, and I really enjoyed it. Since then, I've been doing art on the side.

CRAIG: What's your medium? I mean, do you use–?

BENOIT: Just paper and a pencil.

CRAIG: Cool.

BENOIT: It's very simple.

PAUL: I don't know about the coolest or my favorite, but the one that has my brain going the most right now is working on a hobby operating system, and I've just been really tearing through that pretty hard recently.

CRAIG: What are you doing outside of work right now that you're most excited about?

TIM E.: I am building furniture by hand, largely. That is with hand tools, not just by hands. And so, I've been doing that for, I think, five years now. It's just really great to be building something with my hands. And, I can see my own progress in that period of time, so I feel like I'm improving in it.

DAVID N.: Outside of work, I mean I think a lot of people know I like music. I like playing music with my friends. I have a good group of people who I record music with and then, occasionally, we do shows. It's definitely not something that I spend enough time on to be, like, a serious side project. But, it's definitely a source of much enjoyment, and it's just a great creative outlet, having people that you are good friends with that you can make music with together.

FOGUS: One of the first times that I went down to North Carolina for a company gathering, I had known prior to that that people in Cognitect, you know, like to play music, right? Everyone says that, "I like music," blah, blah, blah.

But, it didn't strike me what that meant until I went down there for the first time and saw people actually creating music and were making awesome music, I mean really doing a great job. There are some amazing musicians in Cognitect. And so, every time we go down, or I go down, I want to get into that. I want to jam with people, and so it's just so amazing that, in one place, there are so many people who are musicians or enjoy music. People just lay it out on the line and play music with each other.

LUKE: Well, I, a couple years ago, took up guitar, not because I hope to be any good at it, but simply as one hobby, at least, that is not on the computer.

RUSS: Outside of work? Outside of work, I am combining my love of music with my love of building odd things, and I've been building cigar box guitars lately.

MARC: I am trying to play electric guitar a little bit. I'd kind of hacked it, but so many people at Cognitect play music quite well, especially electric guitar.

STUART S.: I think the thing that I find most entertaining about Cognitect right now is that if you took time lapsed photography of the office in Durham where I go into work, over the last year, and then I project this forward, you would conclude that the company was morphing from a software development company into a guitar store. It's like once every three to four weeks some new piece of musical equipment shows up.

CRAIG: And then the final question is one we end every show with, which is, we ask the guest to share some advice, either that they've been given or that they like to give.

RICH: We can stop being so focused on ourselves. I think programmers are inordinately focused on their own convenience, culture, and various other things. We are such navel gazers, and we are not looking around at the world. We're primarily working for ourselves, making libraries for ourselves, making editors and tools for ourselves, talking to ourselves about ourselves. We should definitely turn away from ourselves much more often than we do.

JENN H.: I will go back to a piece of parenting advice that I got when our daughter, her first day in church. She was–I don't know–two or three weeks old. This 86-year-old woman, I remember her at that age, sat next to me. She said you need to find something enjoyable about every stage of life because they go by really quickly. It just has always stuck with me because there is certainly something to complain about with every stage of life. And, if that's all you focus on, then you're missing it.

BRYAN: As I've mentioned to you before, Craig, I work a lot with getting kids out on bikes. As part of that, we do some racing. What I always try to tell the kids is that it's not about how they do relative to the other kids. It's about how they do relative to themselves. And so, I always encourage kids to compare themselves to their best effort and put their own best effort in for themselves rather than comparing themselves to others.

YOKO: Yeah, so I'm working a lot for Clojure, which this is a diverse Clojure community. Already there are a lot of workshops, but still there are many areas that haven't had any workshops, so I want to encourage people to get started.

KIM: Well, I'll go back to something I said earlier. Make sure that whatever you do for work is something that makes you happy. If it doesn't make you happy, then fix it.

CRAIG: Then the final question is one we end every show with, which is, we ask the guests to share some advice either that they've been given or that they like to give.

MIKE: This is advice that I've never stated out loud before, but it's something that's been on my mind a lot lately. Every human being has intrinsic worth. Every person should be treated with respect and dignity regardless of the extent that you agree or disagree with them. Everybody has got the same core humanity to them, and I think it's incumbent on all of us, whatever our beliefs, to treat that with respect and dignity.

[Music: Excerpt from "Cochichando," a Brazilian Choro composed by Pixinguinha, Joao de Barro and Alberto Ribeiro in 1943, and performed by David Chelimsky in 2016.]

CRAIG: You have been listening to the Cognicast. The Cognicast is a production of Cognitect, Inc. Cognitect are the makers of Datomic, and we provide consulting services around it, Clojure, and a host of other technologies to businesses ranging from the smallest startups to the Fortune 50. You can find us on the Web at cognitect.com and on Twitter, @Cognitect. You can subscribe to the Cognicast, listen to past episodes, and view cover art, show notes, and episode transcripts at our home on the Web, cognitect.com/cognicast. You can contact the show by tweeting @Cognicast or by emailing us at podcast@cognitect.com.

Our guest today was the entire company, on Twitter @Cognitect and individually at all sorts of places. Episode cover art is by Michael Parenteau. Audio production–a huge job on this episode, I might add–is by Russ Olsen and Daemian Mack. The Cognicast is produced by Kim Foster. Our theme music is Thumbs Up (for Rock N' Roll) by Kill the Noise with Feed Me, and our outro today was performed by David Chelimsky. I'm your host, Craig Andera. Thanks for listening.

Get In Touch