172 karma · joined December 21, 2009
I had a bit of cushion, sold some early-purchased crypto and spent most of my savings, to build my skills in launching a startup and writing code. I interviewed with plenty of companies, but felt the same McKinsey cringe from the big FAANG’s, couldn’t believe the skeeviness of the crypto startups, and went pretty far but not far enough with some of the smaller but more interesting companies. My startup got some interest but ultimately, did not hit hard enough to break gravity.
But, it kept me on the radar for some old contacts and when they wanted to explore the areas I had expertise in, reached out. I did some contract work, ultimately building and launching a major new product on their platform which led to getting brought on full time at the beginning of the year.
I love what I’m doing now. I get to play PM and R&D and Developer roles building things now. The things I build directly impact real people and I can experience the results within days, and I have flexibility to decide what I think is important or interesting.
(For users of the demo site, you can get a Spotify link to the generated playlist in the console. Shhh.)
Except it wasn't as easy. The iPad first demanded that I make an account with the waitlist app service. I could do it on their iPad but it encouraged me to download an app on my own device instead. There was no “no thank you, just get me a table please” option.
We noped out of there pretty quick and even avoided it the next visit to the mall. I don’t know what kind of money they’re saving by switching to this system, but they’ve definitely lost a $60/visit customer who would probably stop in 3-4x per year.
I started a new chat and explained that we would be working together to build a web app that would take a user's input and use the chatGPT API generate a unique music playlist, taking into account every mood, activity, emotion, attitude, era, and artist that the user mentioned. The results would be displayed in a table with the album thumbnail, artist and song information, and an audio preview. The user should also be able to open the full playlist in Spotify.
It recommended we create a Flask app in Python and immediately generated some code and instructions. It took a bit of finessing to get the right libraries installed and setup the environment variables correctly, but I had something working within about an hour. It was ugly, it was slow, but it was functional.
After several queries, it's recommendations no longer seemed to be talking about the same code we'd written. It would reference functions that didn't exist or weren't named the same. For awhile, I could reset it by simply saying, "Here is the current version of the code" and paste the source in, but eventually, it got too large. I refactored both the python file and the html templates so that they were more manageable sizes, and that helped. I found I could also simply paste a function or section of code I was having trouble with and usually get usable feedback.
I had avoided using frameworks like Bootstrap before because there seemed to be a learning curve that I just didn't have time or need to dive into. However, because it designed the app around those frameworks, I had the luxury of just seeing the results and how they were achieved. I won't pretend I'm an expert, but I do feel far more confident if I needed to start from scratch.
By the evening, around 6 hours after I'd started, I had an incredibly usable web app. It was clear enough that I could continue to iterate on my own, occasionally asking chatGPT for assistance when I wanted to make a larger change. Over the next few days, I worked with some partners to fix up the design and hosted it on a server that wasn't my dev computer.
About a week before we launched, I ran into a bug. Two queries ran very close together and the first user got the second users results. Oh no! I realized I'd need some sort of user session management on the server, but didn't really know where to begin. I pasted some of the API functions to chatGPT and explained what happened and what I thought needed to be done. Within 15 minutes, I now had server-side session management. But now I was running into openAI rate limits! It took a little longer to get that all working, but within an hour or two, I now had a working queueing system.
I was then able to very quickly add little bits and pieces: a button to use speech recognition to submit your request instead of typing, the ability to share your playlist via SMS or notes, and an option to extend your playlist if you wanted more songs.
I feel like I've learned more in the past 3 weeks than I have over most of my technical career - I was certainly able to achieve success much more quickly which kept me motivated through the more difficult or confusing periods. The response today has been fantastic, and I'm really proud of what I created.
Pour a cup or two of heavy cream in the blender. Add a tspn or so of salt, and blend it on med. it’ll turn to whipped cream and then chunk into butter. Let it run for a minute or two more as the liquid co to yes to separate from the butter.
Scoop the butter into a non fuzzy towel or a few layers of cheesecloth and squeeze the remaining liquid out. Spread on hot bread or grab a spoon.
Several years later, after some meaty mergers and exec shake-ups, it changed into a product-driven culture. It was less about boldly exploring and more about shoring up the product line and making sure it was as all-around essential as could be.
Then, the MBAs swarmed in. Average tenure went from double digits to mid-singles. Another round of exec shakeups and the new order was clearly marketing: protect the franchise at all costs. VPs who had shone a little early on were now erratic and damaging - to products and morale - with little attention from corporate. It was not about creating amazing things. It became about circling the wagons and squeezing every fraction of a penny everywhere possible.
Working on a more niche line of products, it was an almost Brazil-like routine of pointless effort being praised, ignored, then quickly forgotten. When the trends presented became apparent, then it became a blame game of who was at fault, rolling downhill, of course.
It wasn’t until I was actually on my way out I could recognize how toxic it all was. Like a cancer that grows so slowly, you don’t really notice that small bump has become a bowling ball sized tumor on your neck.
Not sure what advice I have other than to trust your gut, and put aside any loyalty or connections you have to the things you helped create because they’re not yours and will be handed over to the next person without any fanfare. You are not the company you work for. Disconnect the feelings of identity and cut the umbilical as soon as you feel it attaching itself.
So a “cat /dev/tty* > passwords.txt” and waiting an hour collected the credentials of everyone logging in to the server.
At some point, I had logged into the account of one of the sysadmins who msgd me and let me know he’d changed his password and this would be my last time on his account. (If he only knew.). He offered me my own account if I told him who I was, and he might have meant it, but I didn’t bite. About a month later, a patch fixed the issue and that was that.
Spotify Run measured your initial pace and then “locked in” and only played tracks at that tempo. With Muze, we adapt to your pace, so the faster you run, the faster the songs play to match. Matching music tempo to a runners steps per minute proved to be a difficult challenge, but it makes such a difference to maintain pace and push through tough spots.
If you try it out, please let me know your thoughts and feedback. I’d love to know whether we’re hitting or missing the mark.
In addition to our friends in the diamond business, we also had Jack Roberts Appliance who was less offensive than the others.
My concept had a sort of anarchic bent at the time, so anonymity and fighting the man was the guiding principles in theory, but as I was only just learning JavaScript and PHP, ideals were going to be a later development and design phase than I ever achieved ;)
The concept at the time was "4chan meets foursquare." and the inspiration was rediscovering some graffiti in a bar bathroom that years before had particularly tickled some friends and I. For awhile, I added new locations as I traveled extensively for work, so there are hidden little message boards around NYC, SF, China, Seattle, Europe...
Another book of his is Tempo, which is more about understanding and manipulating the tempo of different interactions in business.
But definitely start with the Gervais Principle. It's wonderful.
Right now, much of the interaction is with the bot itself, and not the person it's representing. As a questioner, I don't care how the bot is doing - I would expect the answer to come on behalf of the bot owner. The humor around "asking Alexa in a few hours" was unexpected, and the links provided didn't seem related to my original question.
Also, please support submitting the question when hitting Return, rather than forcing a click on the submit button every time.
Again, I think natural language chatbots can be a big deal, acting as interactive agents that represent their owner for all sorts of situations. But until that interaction is smoother and slightly more believable - not "out of the uncanny valley" perfect or passing a Turing test, but closer to an actual dynamic conversation - it's tough and provides less value, more slowly, than simply scanning profile text.
Understandably, the complaints got louder and angrier as no one on our engineering or prerelease teams were able to reproduce it, but easily half the bug reports were all about this issue and identical. After 2 weeks of trying every configuration of video card, OS, and any other alchemical recipe we could think of, my partner on the test team stumbled upon the license crack online while searching for anyone else having this problem but not having reported it to us directly.
As a brief respite from this ongoing madness, he decided to install the crack on a clean machine and aee how it worked so we could report it. Lo and behold, the problem reproduced on the first try. This whole time, indignant, angry users who were actively threatening our team and vowing to never use another product from our company had been bested by a poorly written crack.
Before exposing the secret, I asked dozens of the most vocal and vicious reporters to please email me a particular log file, and give me contact information where we might get in touch with them as we were close to cracking the case. (Pun intended, and this was before we had very clear rules around personally identifiable information, but even with the policy at the time, these weren’t our customers so I felt less anguish about it.). I received all of it and more, invited them to share their experiences on the forum threads, and then tactfully but clearly explained exactly why they’d seen this problem. I offered to work one on one with anyone who felt my accusation was in error, but not one single affected user replied or followed up after that message.
45 minutes later and had a flat replacement delivered with a refund and credit from Amazon. Other attempts from other services have typically arrived cold and late. Allowing me to see notifications as to when the food is ready, then wait in agony as nothing happens for 30 minutes, gives me a pretty good idea what I’ll be getting. So far, I’m not a fan.