Location: Austin, TX
Remote: Fine with anything, fully remote, hybrid, or full in-office
Willing to relocate: No
Technologies: Full-stack, TypeScript, React, Node.js/Deno, NestJs/Next.js, Docker, Software Architecture Design, AWS, Linux, Advanced Git, Relational Databases, DevOps, Leadership & Non-violent communication
Résumé/CV: See https://tim.zook.net
Email: See https://tim.zook.net
Interests: Open source, modern web platform innovation, progressive web apps, internet protocol design, programming language design, developer tooling, computer graphics, practical & down-to-earth engineering
Anti-interests: Crypto, blockchain
Hi there! I'm Tim, an independent creative thinker with over a decade of experience developing software using web technologies. As CTO for a web development agency for four years, I have solid insight into the business aspect of modern software development, but I have felt called recently to get back to my roots of actually coding and building great software myself. I'm passionate about innovating and proactively moving my projects forward rather than just doing the bare minimum, so I'm mostly interested in smaller companies where I feel like I can have a big impact on the overall success of the company. I have extensive full-stack development experience in a wide range of technologies, but I'm most interested in using React/TypeScript on the frontend and any modern statically typed language on the backend (TypeScript/Go/Rust/Kotlin/etc). I'm looking for companies that want to get a great deal on a highly versatile and productive team member in exchange for a non-standard work schedule, see my website for more details: https://tim.zook.net
Does anyone have any recommendations on how to preseve the paths of public images on organizations that used to be on the Free Team plan? It doesn't look like it allows you to select the Docker Personal plan (the only free one) for organizations, does that mean the image identifier of these images will need to change or can I convert an organization into a personal account somehow?
At the moment, there seems to be no way back. The page to convert an individual user account to an organization account (at https://hub.docker.com/settings/convert) explicitly states:
> To use organization features, convert your account from a User to an Organization.
For better or worse American public schools have basically become an essential service as a free day care system for busy parents. I'm not saying this is good, I think it's a huge problem, but pretending that is not the way it is doesn't help fix it. The question is how to make improvements to our education system to prevent it from being misused this way, and on top of that how to actually politically make those changes happen when there's a huge number of parents that just want to pawn their children off to the state and would oppose such improvements.
That's not a bug, it's a feature. Why shouldn't we have socialized childcare? Our economy needs parents to be able to work 40 hours per week while raising children. If anything, we need to provide better support to families who can't afford childcare every summer.
Why do you need parents to work 40 hour weeks? Wouldn't it be more beneficial for anyone if they 'somwhow' have time raising their own children without running poor?
Many parents in Europe heavily depend on our social net, and I know that's a different debate, however single parents or families where both HAVE TO work full-time sounds like the wrong approach to me.
Isn't that a good thing? The externalities are universally good - single parents have it significantly easier. Even married moms have easier time to find work or occupation outside of the house - whether for money or to not be restless and isolated.
I find it odd that they say "Prisma is ready for production", but "Prisma Migrate is currently in an experimental state and should not be used in production environments". Having a robust migration management system is one of the primary things I look for in an ORM/database management tool in general. The only constant is change when it comes to business requirements, and having the ability to easily and safely change the data model of your application is invaluable. Not having the migration tooling complete makes it difficult for me to seriously justify trying out the Prisma 2 ecosystem in general.
That's totally fair! The first version of Prisma 2.0 includes Prisma Client [1] and introspection [2].
Prisma Migrate [3] is indeed still in the works, but we've shifted our focus a lot towards it now and you can expect major progress there over the next few weeks!
We definitely see folks using Prisma Client with production happily in production already, but I agree once Migrate joins the production-ready club, the Prisma package will be fully complete :D
Right. Best practices are all well and good, but the reality is that tons of people are running in production with no migration strategy.
I'm not saying it's not important or that Prism is fine without it. I wouldn't choose software without a tried, tested migration strategy available. Just... To a lot of people I've worked with, migrations are a nice-to-have that will probably never happen.
It was but at the time the state-of-the-art for migrations was to hire a DBA and have them do it. That's much less common now with migrations and database operations being owned by development teams much more, so the need for migration tooling is much higher now, especially in what I expect Prisma's target market is.
There are also several important features, like literally setting a default value for JSON fields or updating the String to be longer than VARCHAR(99) or using LONGTEXT in MySQL that are still open issues.
I think the VC announcement forced them to prematurely launch 2.0.0.
I'm with the product team at Prisma, currently focusing on migrations.
Your point is valid, hence delivering a production-ready solution for migrations is one of our top priorities.
However, as my colleague @nikolasburk shared above, you can use a third-party migration system (knex, node-pg-migrate, e al) with Prisma and still get all the benefits of Prisma Client.
Prisma is designed to be more powerful if you are using the entire toolkit, but we also want to make it easy to use just specific tools within the kit, if that is what works well for your project.
Feel free to follow along or check us out again in a few months and hopefully by then our migration system will no longer be any kind of friction point. :)
While this this attempt at objectivity seems laudable, I don't think there is such a thing as objective value. All value is subjective and subject to interpretations. If you create a program that prints "Hello World" over and over again in a loop forever, you have made an objectively real piece of software, but it has no value to anyone. I would say that all actions, at a purely objective level, are completely pointless until we apply a value statement to them. For example, if like many people you believe that humans existing in the universe has value, and that we should try to optimize for humans existing as long and/or as prosperously as possible, then creating products that contribute to the survival and prosperity of human beings makes sense. I think it is useful to understand the basic values we are taking for granted whenever we state something has "objective" purpose, because those values don't always hold.
That depends on whether or not you believe a painful truth is better than a pleasant lie.
I personally believe truth to be more important than happiness, and I would want to know the truth even if it made me unhappy. Other people might prefer happiness to truth, which is fine, but that's not what I would choose for myself.
I think what we really need is basically exactly what Google has in terms of search technology, except that it needs to be open and explicit, instead of it being Google's secret proprietary data on me that I can never access and that they get to sell to advertisers to my detriment.
I (like many other people on HN) use Google constantly when programming, and it's impossible to overstate the convenience and power of Google's almost creepy ability to guess exactly what the language and context of my search query is. It cuts precious seconds off of each query (when I am routinely make hundreds of queries per day), and more importantly cuts out the interruption of mental flow as you try to re-word your query into a format that the search engine will understand. This can potentially add up to hours of saved time per day, depending on how you calculate the impact of these features.
In order to duplicate this I don't think we can get around the need for "search profiles", which takes into account your location, interests, past searches, personal connections, etc, but it needs to be explicit and it needs to be my data. If I want to delete it or sell it, it really needs to be up to me. If we could figure out a secure way to do this, then we would have the framework necessary to compete with Google with an open platform. Until then, it's just not going to be worth it to switch for the vast majority of people.
I suppose the real question is then "How do we decide what is 'worth doing' ourselves?"
I think it's fair to say that abolishing all division of labor doesn't make much sense. So what makes some activities different such that they should not be subject to division of labor? Outsourcing work to personal trainers, doctors, and musicians seems like a very good idea to me.
Let's say you got a date with a girl. Instead of a date you could have been programming making $100 per hour instead. The date costs you money. Would you outsource the date to your friend who will go in your stead with the girl, so you can be more productive?
No way, the date is worth going in and of itself.
Same logic with raising children.
You're going to to look back on the experience with nothing but fondness. The experience of raising your child was valuable in and of itself.
Life is not about maximising productivity, you know.
I don't think your example of dating is a very good one. You're changing the functional nature of the date by having someone else go on it. That's like saying you can't outsource hair-cutting to a barber because it would be equivalent of telling your friend to go cut his hair for you. Clearly you need to be participatory in some degree for the activity to retain it's functionality, but that doesn't mean you can't outsource the hard parts to someone else and have everyone be better off. (Maybe it's unrealistic, but personally I think we do need a bit more outsourcing in dating. We don't need to have everyone muddle through it by themselves, we can have skilled people help educate and guide us in how to find healthy meaningful relationships.)
And honestly, I simply can't help disagreeing with the idea that everyone should raise children themselves, just because we will "look back on it with fondness". That seems to me to be the equivalent of saying (pardon the awful analogy) that people should kidnap women off the street and rape them because they find the experience "pleasurable". The way I see it is that by raising a child you are forcing your will upon them, they did not ask or consent to it and have no say in how it is done. And yet, child raising must be done somehow, and therefore you have a serious responsibility to try to ensure that it is done as well as it possibly can. You have no right to force poor parenting onto a child simply because you had a "nice experience".
I realize my views on this may be a bit unusual, but I think it's worth considering.
Do you have kids? I would hardly say every parent I know looks back on it with "nothing but fondness". Some would even say that on balance, they would have rather not had children at all.
I should have rephrased it to include only people who enjoy raising children. For those people, it's OK not to be maximally productive. It's ok to not want to outsource raising a child by strangers.
1) Things you do because you love doing them. Like spending time with your kids - it's not about doing it as-best-as-is-possible, it's just about doing it because you love doing it. It's worth doing for you, so you don't have to worry about how well you do it.
2) Things that are outcome-based. When it doesn't matter if you're the right person for the job because you're the ONLY person for the job and the job needs doing.
>I suppose the real question is then "How do we decide what is 'worth doing' ourselves?"
Well that's the thing, Chesterton gives advice on that in the quote:
Is it worth doing even if you're doing it poorly? Then it's 'worth doing'. Is it only worth doing if you're doing it at a high/professional/competitive level? Then it's not 'worth doing'.
Of course as pointed out in every third comment, take Chesterton with a grain of salt. Chesterton never said anything that he didn't later contradict, and assert that contradicting himself was in fact proof of the ultimate correctness of both statements.
> "How do we decide what is 'worth doing' ourselves?"
Another way to phrase this: "How do we live a good life?" People have been asking this for thousands of years. It's one of (or perhaps the?) central question of humanity.