2,532 karma · joined August 3, 2014
https://www.alexmingoia.com
--
News junkie? Don’t miss a headline: https://sumi.news
Then I needed to ingest RSS feeds. So I found a library that handled that for me. Except that library uses another type for URLs. Uh oh. What should I do? I could change my URL type to be a wrapper type around both types, or write code to convert between the types. I chose to convert. Now I'm writing code to shuffle between the types where this RSS parsing module is used.
Then I needed to make HTTP requests. So I pulled in a library to handle HTTP requests. Of course, that library uses another type for URLs (from another library it depends on). Great. Now I have 3 types for a URL.
Then I needed to parse XML... and you know where this story is going.
So now my codebase has many different URL types.
The type-a-holics will say: "This is actually good! Each implementation of the URL type might have slightly different constraints, and the type system makes this all explicit. You should be grateful you spend half of your development time fiddling with types. The fact that `unpack . decodeUtf8` is littered around your codebase isn't code smell, it's the splendor of a type system that's saving you from yourself. You should learn to love the fact that you have to deal with String, Text, and ByteString and 4 URL types to fetch and parse an RSS feed. Otherwise your software would be full of bugs! Silly developer."
One day I finally woke up from this type nonsense. There's integers, rationals, strings, lists, and maps. The end.
A functional language with a simple set of structural types would be the sweet spot for me. Clojure is probably the closest to this.
... What people are suggesting is to take money from some productive enterprises and put it towards other productive enterprises such as education, medicine, public infrastructure, etc. Enterprises which have more benefits beyond simply increasing the bank account of entrepreneurs and fund managers.
1 = I’ve done this before
2 = Someone else in the organization has done this before
3 = Someone outside the organization has done this before.
4 = Nobody has done this before
1 and 2 can be quickly estimated by referring to past work.
3 and 4 must be broken down into small tasks that are estimated.
And when breaking things down into tasks to estimate, keep in mind coding is only around 1/4 of the work to produce software. There’s tests, documentation, revisions, planning, and communication.
It turns out we can probably solve this by building planetary chimneys 5km tall that move heat to the outer atmosphere.
Basically, instead of text-to-SQL you do text-to-function-arguments, where that function does the analysis and the LLM translates natural language to your DSL instead of SQL or raw DB queries.
Shoot me an email if you want to explore this further (website in profile).
San Francisco is taking the biggest steps in history toward creating a full public-power system.
In filings with the California Public Utilities Commission, the city has established that PG&E’s local property is worth about $2.3 billion—and if the commission agrees, the city can move to seize those assets under the power of eminent domain.
https://48hills.org/2024/03/after-111-years-sf-is-finally-mo...
You can start now with your existing network. Just let everyone know you’re available for work, and see what comes your way.
real high leverage networking is done at the job, in my experience.
What do I mean by networking on the job? I mean establishing good relations with others at your current gig - not just your contact that hired you. Treat whoever you work with well and make sure they have your contact info.
My best clients came from people at previous gigs that I didn’t know at first and weren’t my contact. But they would remember “the contractor my boss hired at the last company I worked at was great and was so nice to me and I have his number” and then bam you have a new gig. People start their own companies and need help, they get a new job and are put in charge of hiring, or someone asks them for help and they drop your name.
Everyone you work with is a potential future gig. So don’t just focus on the work, also focus on getting to know everyone you work with.
Seeing what has happened with Assistants API, do you expect OpenAI to soon introduce an SQL API as well?
As someone in the position to evaluate integrating a text-to-SQL pipeline in our product, I'm left wondering "why not just wait until OpenAI does this?" Especially when you consider the pipeline ends at OpenAI's model anyway. How long will the current crop of productized text-to-SQL pipelines really be around for?
At some point you have to decide, “do I work for my team and the people I’m supposed to lead, or do I work for the business?”
Great managers choose their people over the business. Ironically, this best serves both in the long-run.
I propose Profito: A 3-day week for a profitable life. For every 3 days you work, you get 4 days free.