## Audio

Other Places To Find This Episode:

## Show Notes

• KRL.io - The URL shortener made by Will Blew.
• WesterosCraft - The Game of Thrones world Westeros, recreated in Minecraft.

## Transcript

Ricardo: Welcome to Season 1 Episode 3 of Developer Hustle. The podcast about tech side projects and the people who make them. We’re your hosts Ricardo Feliciano and Will Blew.

Will: Hello.

Ricardo: How was your week Will?

Will: My week was great. It was an excellent week I got a lot of stuff done. Not necessarily on my side projects but a little bit done on those. But a lot of stuff done at Linode it’s been crazy it’s been great. Side projects wise I started rewriting the API for Krl.io the link shortener service that I run and wrote because previously it was terrible not like it didn’t work terrible like it got compromised terrible. So, I had to kind of walk that back and take a little bit more time on it because that’s one of the risks with rushing things sometimes is you make insecure things. But, it was a while ago and I decided to just turn it off and I’m finally getting back around to rewriting it and not doing dumb things like I did last time.

Ricardo: Cool, speaking of that you know that could be an episode topic. The balance between speed and security.

Will: Yeah, for sure. Oh and to clarify no user data was accessed it was someone doing mean things right off the bat and I watched it as it happened.

Ricardo: Okay, good point. Anything else?

Will: No, I fixed some stuff that was broken but nothing really specific like Coinstream basically runs on like a back end that you pull for events using Twitter streaming API based on certain keywords and every once in a while I find a new thing that breaks it and makes it explode and I really just need to add better logic around the streaming API portion but for now, I’ve just been kind of accounting for those things so I don’t get weird results in my database. So, I did a little bit of that cleaning it up trying new stuff and really just reading a lot of books this past week.

Ricardo: Cool, now when you say books. Talking about physical books, ebooks, audiobooks?

Will: All three. So, on my drive I use Audible and I listen to stuff there. I forget what the name of the book I’m listening to on there it’s one of those general approach to developing software books based on like real life examples not very far into that one. I’ve probably listened to that one day. I also just got both of Tim Ferriss’s newest books which are pretty much the same book not trying to knock it there’s a lot of value in there but they’re not very different. There is different content in certain places don’t get me wrong but there’s also a lot of the same content both very valuable been running through those not really like reading them front to back ‘cause that’s not really what they are and I read something else can’t remember what it was. Something on my kindle. I don’t know I have to look I’ll get back to you.

Ricardo: Okay, so, for my week I didn’t get to do too much as I would’ve wanted to do basically the only kind of thing of note is I launched Developer Hustle this podcast on Product Hunt. I wasn’t even sure if that was a thing. I’ve launched a few things on Product Hunt before most of them don’t do too well one of them did okay. But, I’ve never personally seen a podcast be launched on there. I’ve seen like podcast apps or like apps that curate podcasts launch on Product Hunt [Will: Yeah] but never an actual podcast. So, I figured you know, might as well give it a try. It didn’t do so well. I think last time I checked we only have about nine votes. So, that kind of sucked. I did the whole you know launch close to midnight Pacific Time in the U.S. to get the full days worth so you can try to get the top ten put a thumbnail another image in there didn’t do too well so that kind of failed.

Will: Yeah that’s the Levels approach right? Like he mentions [Ricardo: Yeah, exactly.] in his breakdown. Yeah, I watched that the other day. I think I’ve seen some of that stuff before like he had mentioned it other presentations and it seems pretty sound but I think a podcast is a hard sell on Product Hunt honestly.

Ricardo: Yeah, I was curious. To me it was an experiment because I wanna say that there’s definitely companies that launch things on Product Hunt but majority of the projects that I see all seem to be smaller and seem to be that projects you know side projects so, I figured ‘hey maybe this is the audience we can launch there and it’ll do well’ but either I didn’t do the launch too well or I’ve launched things on a Friday before this I launched it on Product Hunt on a Friday and previously it wasn’t successful so maybe I just shouldn’t launch things on Friday maybe that’s it [Will: I don’t know] or maybe you just don’t launch a podcast on there who knows.

Will: Ehh, it’s worth trying all the different stuff and I saw a couple places pick up what you had put out but there was like this service where they scrape one of the sites and then their data comes from it. So, I saw that come up a couple places that you didn’t list so that was cool to see. And I think the response was about what I expected on Product Hunt honestly there’s people that pay attention to the things that we’re doing that we’ve either worked with previously or by proxy know people we’ve worked with previously and I think that support is pretty cool to see because those are people engaged in the community. And I definitely definitely appreciate the feedback that we’ve been getting so, thank you everybody.

Ricardo: Yeah definitely and I’m very much excited. We’re currently recording episode three we’re still very very early in the podcast world so we have plenty of room for improvement there. Yeah but otherwise aside from the failed Product Hunt launch for this podcast. One thing to note by the way I don’t remember if I mentioned it last episode but Developer Hustle is on Google Play music and since the last recording we’ve gotten approved on TuneIn radio. [Will: Nice] So, if anyone is listening to this maybe on the website right now or somewhere else and you have TuneIn you can now find us on TuneIn and get your recordings downloaded automatically from the app which is pretty cool. But yeah otherwise aside from that launch the only other thing of note is I got invited by Canonical the company who creates and maintains Ubuntu the Linux operating system they have another package called Snapcraft which is a Linux packaging tool. And they’re doing a summit here in Seattle so I’m actually in Seattle right now for the week working with engineers from Canonical, Microsoft and some other companies. We’re kind of all just working together it’s like a hackathon basically we’re all working together working on snapping some new programs together, working on documentation any other kind of problems we come across and it’s really nice to be able to work with everybody in the same room. I’m really excited for this I’m here on day two right now it’s a Tuesday so, thanks Canonical.

Will: Yeah, that sounds like a lot of fun. Was there someway that they reached out to you is it through CircleCI that they reached out to you?

Ricardo: Surprisingly no. You would think so but doing my job basically as an evangelist I came across the Snapcraft forum at one point ‘because I was working on some project and I was figuring out how to package it. So, I was thinking ‘hey I’ll just create a dev package for it right?’ And yeah that was difficult. So my project was a simple little WiFi thing where it detects if you’re on a capture portal which is basically like the access points you’ll see at Starbucks or McDonald’s or something like that where you connect to WiFi there’s no password but the minute you connect they redirect you to their website to have you read some terms of service and you know click that accept button. So, I was making a little program on Ubuntu to automatically detect that bring you to the site and possibly even click the button for you to speed things up and I wanted go package it it was just a bash script and doing that packaging a bash script into a deb seems a lot more complicated than I would have liked. I came across Snapcraft which they can package things as .snap files which you just do snap, install and then the name of the snap and you’re done and creating it is so much easier so that was on their forums. I was looking through trying to ask some questions get some answers and I started to like the software so I would start answering other people’s questions kind of got to talking and Alan Pope who is the Developer Advocate for Snapcraft we ended up going back and forth together and ended up working on a CircleCI ‘How to build a snap package on CircleCI’ blog post. So we did that that went out it got some traffic that did pretty well and I’ve been kind of back and forth in the community so I guess when they were getting together the guest list for this, they invited some vendors some community members and I was fortunate enough to get an invite.

Will: Cool, it sounds like a really collaborative effort to be a part of and it sounds pretty unique too.

Ricardo: Yup, and that’s why I like Canonical and I like open-source because Snapcraft itself is open-source so anybody can go on GitHub and view the source for this and how they’re doing things and how they built the snap store and all of that. Just a nice community project which I love.

Will: Nice. Well, I look forward to an update on that after you guys are done see how everything went. What are we talking about today?

Ricardo: So, today we are talking about a very very important subject and I am sure we’ll be talking about this again. But basically I wanted to talk about how to ship. And what I mean by that is you have an idea, how do you create that idea and how do you get it out? Because a lot of the times when you create something if it’s only on your computer and it’s half finished no one gets to use it and if it doesn’t ship does it really exist? So today we’re going to talk about how to ship and some tips and our experiences basically.

Will: Cool. Well, I can give you a breakdown of the general sense of how I ship not the specifics that I know I’m sure we’ll dive into but in general I have like two sentences about how I ship.

Will: Everything I do I do it in production for these projects. I put it out there right away. So if I have a base it’s out. I sit down at a virtual machine whether its at one that already serves something or not and I start to write the code and the code is out in the wild right away.

Ricardo: Okay, so basically you don’t develop anything on your local machine at all?

Will: No not for my side projects no. The hustles that stuff is acceptable for me I feel like considering I don’t have users or data or anything like that so I just start to write it see it as it’s going to look when “it’s done” and use it that way and I don’t really give it to anyone I usually put it on like a subdomain or something but it’s out there and it’s a realistic representation of what I’m working on and I’m not saying you can’t reproduce that don’t get me wrong but it’s just how I approach it.

Will: Yeah, I think that services like what you guys offer are a critical role for getting things out the door especially a high collaborative you know a small to large company or project whatever it may be it definitely helps to set that motivation level cause you see things and you get responses from those things and I think that’s an important part when you’re collaboratively working you know my side hustle things that I’ve developing it tends to just being me doing those things so it’s a whole different experience [Ricardo: Yeah] but you know if one of those things were to grow up beyond the level of the things I currently have it would probably be a whole different process.

Ricardo: Okay so, I wanted to dive into some tips that we have the we can give people on how to ship I think one of them we already went over you mentioned that that you don’t really develop side projects on your local machine and I think that’s actually pretty interesting so that that reduces some friction later on when it comes to shipping because it isn’t like you developed it on your local machine now you have to do the process of uploading it figuring out how to get it to run in your production environment all of that’s gone with how you do it. And I think it’s pretty cool.

Will: Yeah, I mean that’s kind of the purpose I have a stack that I deploy to do prototyping right? And I can deploy that stack whenever I want using all of the things that Linode offers me to use from their service. So it’s a no-brainer for me deploy this lamp stack I want it with this language so I select that imagine it’s deployed and then I can start writing code right away and everything’s good even if I just have the IP address kind of reduces that barrier for having to struggle to figure out how you want to approach things just prototype go you can change it later if you need to.

Ricardo: Yeah, that reminds me also a blog post I forget who’s blog it was but it was a blog post that came out a few years ago about how you can use VPS such as from Linode to basically be your dev environment so you SSH in or you MoSH in and you have your actual environment there and your laptop’s basically an interface to that Linode and I thought was pretty cool.

Will: Yeah and I mean like so I can give you an example of how this grows real quick it’s super simple and it’s kind of similar to a structure you’ll see when you get more organized and you’re a big organization that’s deploying Debian packages or whatever it may be. I start off with that small prototype I expand it and when people start to use it which is a whole ‘nother process it’s not in that state anymore it’s definitely more well-defined I’ve drawn back any of the openness that I added to my applications and I’ve also created a new development environment for that thing by just cloning over the environment once I’m ready to cut and only working in that development environment so I can validate the things that I’m adding to whatever I’m working on before I push them out to that production version of what I created initially.

Will: Yeah and I’ve echoed this previously you said it very similar to how I said it in the past when having this kind of discussion and I have a really good example or at least I think it’s a really good example in my own life which is WesterosCraft. WesterosCraft started almost seven years ago now and is a physical thing even though it’s digital. So, WesterosCraft is rebuilding the worlds from Game of Thrones in Minecraft that’s what it is right? [Ricardo: Yeah] So it’s this really unique digital thing that has a physical component and when people ask ‘well does relative pointing work when you’re trying to track iterations and does this thing work if you just iterate it why can’t we just do them all at once?’ I talk to them about WesterosCraft because if you look at our videos from five years ago the thing you see now is not that. It’s not what you would see there and that’s because we iterate on everything we do. We have major cities that people have rebuilt like five times over the period of that six and a half seven years and that’s because it needed to be improved. And those iterations have improved it substantially over time even though the initial product maybe was rough and I think that that physical example kind of connects the dots sometimes.

Ricardo: Yeah I agree. A lot of people think that if the have an old cold base for example that they have to do this big large rewrite almost always that’s the wrong thing to do. We spoke about discipline before and I know in the last episode we spoke about how you can kind of encourage yourself to keep going so you can form a habit. Iteration is the key to that when you iterate on small tasks basically what you doing is your giving yourself more frequent gratification for completing something and then frequent gratification is what keeps you going what gets you excited to continue and do that large task over a course of time. We’re going to have it in the show notes but WesterosCraft is amazing it’s beautiful I don’t really play Minecraft myself but just looking at it it’s something where even if you don’t play too often then you’ll definitely want to hop onto Minecraft and go look at what they’ve built and just see how beautiful it is. Like to me it’s just art for people to collaborate together and build something as large and amazing as this is stunning.

Will: Yeah, I mean it’s an effort of thousands of people at this point in time. I mean I’m just blown away every time I look at it I haven’t contributed much to the building over it’s history more of a facilitator but I think it’s a great example of iterating over smaller portions of a large thing and seeing those results over time.

Ricardo: Our next tip that I wanted to cover is social pressure basically this is kind of like a social hack and what I mean by social pressure is if you have an idea on some sort of project that you want to do and you want to ship it. One cool thing that you can do is to tell people about your idea. If you have Twitter write about it on social media on Twitter on Facebook if you have a blog write about it on there and explain your idea and what you’re trying to do and tell people that you’re starting because believe it or not a lot of the times that fear of being wrong or failing in front of others will actually help you get over some of the hurdles that you might be facing and ship something. I think a good example if Will you want to share with our listeners is what you did last year I think it was last year when you did I forget what you called it but I remember you were doing I think it was like a project a week.

Will: Oh yeah, yeah, yeah. So last year probably around this time I started documenting making one app a week and it’s not a web app a Android application and I hadn’t made an app like that in a while but I was familiar with things just not as familiar with Android Studio ‘cause I was using Eclipse prior. I documented the process that I went through I showed my logic I put on the whiteboard what I was doing and I ended up making it probably like nine weeks I put out an app every week for nine weeks. Google denied half of them so they’re not all up there and some of them have been decommissioned but it was definitely an effort to get better at something while also communicating with people in the public to kind of hold myself accountable like here’s a video of me doing this thing I said I’m going to do this thing. Here’s a tweet of me saying I’m going to do this thing here’s the video and a response and you see I got some good feedback and I definitely learned a lot from the experience I was definitely also out of my comfort zone I’m actually a lot more comfortable now so it worked out.

Will: Yeah, I think that’s a great example.

Ricardo: Yeah and I think another form I don’t know if you would call this social pressure or if you have a different term for this but something that we’ve both done together at Linode are hackathons a lot of the hackathons that I’ve been to were student based they were at different universities and were only for students but whether you’re a student or not finding a hackathon especially if it’s a hackathon around a topic that interests you like there is civic building hackathons, there’s hackathons for women in tech, there’s hackathons for I don’t even know. There’s hackathons for like everything under the sun. Finding a hackathon and finding a teammate there to work with and working on a project I think that’s a great way to ship as well because a hackathon is usually thirty-six hours and you get together you hear the topic and you build it and you’re in an environment with other people, other who are coding, other people who are designing, other people who are planning and you kind of just get into the groove of things and thirty-six hours later you have something to show for it.

Will: Yeah, I think hackathons are great. I think they can have their downsides cause you’re really extending yourself if you’re not used to that level of effort for that continuous amount of time. But you can always take breaks you know some people are overzealous some people aren’t. I am. I think that what I found about hackathons is it’s like a melting pot of ideas and you can execute on those ideas pretty much immediately and I like thrive in that zone of having limited time and getting something out the door like that’s where I live like a lot of times people be like ‘you good? I know you’re super busy.’ And I’m like ‘nah I’m good this is what I do.’ And hackathons are like that for me it’s like go make the thing. You have this much time move really fast. And I think that’s a really cool thing because weird stuff comes out when you move too fast sometimes. You know it’s just like get this half made thing and you’re like but this could do this. I think I’m gonna make it do this now.

Will: Yeah, I think all that stuff is totally valid and I wanna make sure if there’s anybody listening that’s not like totally in this zone of tech yet or maybe they’re interested in tech go to a hackathon like don’t be intimidated it is a great experience and it’s all about learning. Walk up to someone who is working on something and ask them what they’re working on and ask how you can help and you’ll learn a ton of things. And you’ll ship and get stuff out the door rather than keep your ideas in your head and never act on them because that’s usually the problem.

Ricardo: Exactly. For the hackathons that I’ve been to like I said they’re usually thirty-six hour marathons, they’re very intense. However, they’re not all like that. There’s hackathons that I’ve seen that are actually online for example where there’s no physical place you can go to everyone just gets together maybe they hop into Google Hangouts maybe they use Skype but everybody gets together they form teams over the internet and they work on something. And then you have for example the event that I’m at right now which is the Snapcraft summit it’s called a summit so it’s not really called a hackathon but it’s the same general idea we have a bunch of different people from different companies in the same room working on things. You can work on your own thing or you can work on someone else’s thing you can just yell out across the table ‘who knows the answer to this question?’ And you just have all these different people there with all this knowledge that you can share and help with your project and kind of get things going. Hackathons come in all different shapes and forms. Alright, well typically at the end of our episodes we ask if there are any listener questions and I believe we got a question for today’s episode right?

Ricardo: I was actually pretty intrigued when I saw his response because I never really thought of the whole waiting two weeks to gauge your own interest I think that’s another change that’s happened in my life recently with CircleCI and Navy when I’m drilling and all these side projects that I have I’ve been getting busier and busier. There’s been a lot of ideas that I’ve had because ideas come constantly throughout the day they never stop. And I would write a lot of these ideas down maybe put them in Trello or I’ll buy a domain name and I would kind of sort of get it started but then I’ll drop it for a little while. I wasn’t doing it intentionally because this is my process or anything like that it was just that I’m busy I just didn’t have time to focus on it now. So I would write it somewhere so that later on I can get back to it and I’ve noticed in a week or two sometimes I’ll get back to it and I don’t care. I’ll look at it and I’m like that wasn’t a good idea or just doesn’t interest me and I’ll delete it. And other times I’ll actually notice I have more ideas so I’ll look at my list and realize that this idea wasn’t maybe the greatest but together with this idea that I just came up with now there’s actually something here there’s actually something that I can make. I think what Angel mentions is actually a good tip that I didn’t explicitly think about but in a way I was kind of doing where maybe if you are busy sometimes just writing the idea down and coming back to it is a good way to see if it’s actually interesting to you if it’s actually going to solve something or if it’s one of those things that sounded good at first but really it’s not.

Will: Yeah, I think he’s on point. That’s really a good way to approach it and he’s a smart dude so I expect nothing less from his suggestions.

Ricardo: Exactly. One thing I will want to point out though which I think is a little dangerous with this approach and more so with what you said I think a lot of the times it depends what your goal is pretty much what we cover on the show is side projects while it’s useful to I think ask people if they would use this I think the idea and why you originally came up with it is important as well. I go back to for example the whole media server in your house thing it doesn’t really matter in that sense if anyone else is going to use it right? If you want to meet you server if you think it’ll make your life easier or if it’s just cool or maybe you’re building something not really to build the thing itself but maybe you’re building something to learn like earlier you mentioned how when you were doing the one app week you’ve used, what was before Android Studio again? Yeah you used Eclipse but never used Android Studio so maybe the app itself isn’t what’s important that you were building you know maybe it was the experience of switching over to Android Studio and learning how to use that maybe that’s what’s important and that’s the goal of that side project. And in that sense it doesn’t really matter if someone’s is going to use the actual app you make because really what you’re getting out of it is the knowledge and experience of using Android studio.

Will: Yeah that’s fair. And I mean I’m a fan of just ship it anyway. And make it anyway because I’m fairly certain at this point that 999 out of 1000 of the things you make are not going to work at all like not even five people. So, I just ship all the time man but if you are you know, stuck in that rut try some stuff maybe those things or maybe write it down on paper and see if it comes out the same way I don’t know try whatever you can if you’re stuck in that place. I’m just not that kind of person I guess, I just kinda do it.

Will: Cool, sounds like a good plan. I don’t have any major commitments to make right now. I’m just going to finish this stuff first and then start something new. I got a lot of stuff to finish first.

Ricardo: Okay well, speaking of Krl.io from the beginning of this episode. Did you see my tweet that I sent you? If you want to talk about social pressure.

Will: I did and I don’t know what you mean by your question of how do you brand.

Ricardo: Okay Krl.io right now if you want to shorten a link. You go to the website and which by the way Krl.io‘s URL will be in our show notes. And you give it a URL that you want it to shorten and it gives you back krl.io/ a bunch of numbers and letters. Which is the shortened link correct?

Will: Yeah, nothing new.

Ricardo: Okay, so what I want to do. I have a domain name for one of my businesses that is a shortened version of my domain name it’s like I think it’s five characters including the TLD. I would love to be able to use that for the shortened URL but have the whole thing powered by Krl.io.

Will: Yeah, I get what your getting at. The answer is that’s not a thing. And it’s not going to be a thing until I’ve finished all of the things I’m currently working on. So Bitly lives in that space and they make millions and millions of dollars with .htaccess files essentially. I don’t really need to do that and I’m gonna at some point but I want to offer more value to what that is and that’s why I’m trying to finish these features and some of the other stuff before I introduce something like that because it’s actually a lot harder to manage than what I’m currently doing and me just recreating that adds no value when you can go to Bitly pay them $89 for like the trial thing I don’t know how much it is. It’s expensive but. Ricardo: I rather go to Will Blew and pay him$10.

Will: Yeah, but right now you’re the minority in that situation when it comes to that feature but eventually it’ll happen I just want to be able to add actual value to the service for people using it before I just copy a really simple thing.

Ricardo: I’m Puerto Rican and Jamaican I’m always a minority. But, anyway I know you were mentioning that there’s a bunch of things that you wanted to do for Krl.io is you’re working on including some API work. Is there a specific task that you plan to have by next week completed?

Will: Yeah, all the basic functionality of the API will be done by next week. I will break it down that’s getting the replies from the link’s URL to see what the short code points to in real life so you’d say I wanna know where the short link actually points to and you get a JSON response. Creating shorten links via the API that’s with API keys. And what else? There was something else. Oh, and custom short links as well.

Will: Cool. So do you want to see who can get it all done first? Is that what we’re doing? ‘Cause I gotta go if that’s the case.

Ricardo: I think your tasks are a little bit harder than mine. I’m not sure if that’s fair to you.

Will: I’m just kidding I don’t want to do that to myself.

Ricardo: Maybe we can live code during an episode one day. We’ll see.

Will: Yeah.

Ricardo: Cool. So, anything else you want to bring up any other tips that you have? Or anything else you want to tell our listeners?

Will: No, I think we covered most of the stuff we wanted to discuss. Just as always if you have questions. Please shoot our direction or topics you want to discuss or whatever. And we will talk about it just like we did today.

Ricardo: Definitely. So, Krl.io, WesterosCraft, all of those things will be in our show notes. You can find us on Twitter at Twitter.com/DeveloperHustle and Facebook.com/DeveloperHustle and of course our website DeveloperHustle.io where you can actually listen to all of our episodes and comment on them as well. Alright goodbye everybody thank you for listening.

Will: Thank you, goodbye.