Some people really benefit from hearing advice that everyone knows, for the same reason we keep schools open despite every subject in them having been taught before.

In that spirit, here's some quick Things Many People Find Too Obvious To Have Told You Already.

Your idea is not valuable, at all. All value is in the execution. You think you are an exception; you are not. You should not insist on an NDA to talk about it; nobody serious will engage in contract review over an idea, and this will mark you as clueless.
Technologists tend to severely underestimate the difficulty and expense of creating software, especially at companies which do not have fully staffed industry leading engineering teams ("because software is so easy there, amirite guys?")

Charge more. Charge more still. Go on.
The press is a lossy and biased compression of events in the actual world, and is singularly consumed with its own rituals, status games, and incentives. The news necessarily fails to capture almost everything which happened yesterday. What it says is important usually isn't.
Companies find it incredibly hard to reliably staff positions with hard-working generalists who operate autonomously and have high risk tolerances. This is not the modal employee, including at places which are justifiably proud of the skill/diligence/etc of their employees.
The hardest problem in B2C is distribution. The hardest problem in B2B is sales. AppAmaGooBookSoft are AppAmaGooBookSoft primarily because they have mortal locks on distribution.
Everyone in Silicon Valley uses equity, and not debt, to fuel their growth because debt is not available in sufficient quantities to poorly capitalized companies without a strong history of adequate cash flows to service debt.
Investors in venture-back companies are purchasing a product. It is critically important to understand that that product is growth. The reason tech is favored as an asset class that it appears to be one of few sources of growth available on the market at the moment at any price.
The explosive growth of the tech sector keeps average age down and depresses average wages. Compared to industries which existed in materially the same form in 1970, we have a stupidly compressed experience spectrum: 5+ years rounds to "senior." This is not a joke.
The tech industry is fundamentally unserious about how it recruits, hires, and retains candidates. About which I have a lot more to say than could fit in a tweet, but, a good thing to know.
If you are attempting to hire for an engineering position, greater than 50% of people who apply for the job and whose resume you select as "facially plausible" will be entirely unable to program, at all. The search term for learning more about this is FizzBuzz.
Software companies in B2B which aspire to growing quickly will eventually spend more on sales and marketing than they do on engineering. You can read S-1s of successful IPOs and calculate the ratio; it is sometimes 2X++.
The chief products of the tech industry are (in B2C) developing new habits among consumers and (in B2B) taking a business process which exists in many places and markedly decreasing the total cost of people required to implement it.
There is no hidden reserve of smart people who know what they're doing, anywhere. Not in government, not in science, not in tech, not at AppAmaGooBookSoft, nowhere. The world exists in the same glorious imperfection that it presents with.
Significant advances shipped by the tech industry in the last 20 years include putting the majority of human knowledge in the hands of 40%++ of the world's population, available on-demand, for "coffee money" not "university money."
Weak-form efficients market hypothesis is a good heuristic for evaluating the public markets but a really, really bad heuristic for evaluating either technical or economic facts about tech companies, startups, your career, etc etc. Optimizations are possible; fruit hangs low.
Startups are (by necessity) filled with generalists; big companies are filled with specialists. People underestimate how effective a generalist can be at things which are done by specialists. People underestimate how deep specialties can run. These are simultaneously true.
Most open source software is written by programmers who are full-time employed by companies which directly consume the software, at the explicit or implicit blessing of their employers. It is not charity work, any more than they charitably file taxes.
The amount of money flowing through capitalism would astound you. The number and variety of firms participating in the economy would astound you.

We don't see most of it every day for the same reason abstractions protect us from having to care about metallurgy while programming.
CS programs have, in the main, not decided that the primary path to becoming a programmer should involve doing material actual programming. There are some exceptions: Waterloo, for example. This is the point where I joke "That's an exhaustive list" but not sure that a joke.
Technical literacy in the broader population can be approximated with the Thanksgiving test: what sort of questions do you get at Thanksgiving? That's the ambient level of literacy.

Serious people in positions of power eat Thanksgiving dinners, too. Guess what they ask at them.
Salaries in the tech industry are up *a lot* in the last few years, caused by: a tight labor market, collapse of a cartel organized against the interests of workers, increasing returns to scale at AppAmaGooBookSoft, and the like.

Investor money *does not* pay most salaries.
This concludes, for the moment, an off-the-cuff list of things which would otherwise be too obvious to bring up in conversation.

Meta thought: you radically underestimate both a) how much you know that other people do not and b) the instrumental benefits to you of publishing it.

 

I like this heuristic, and have a few which are similar in intent to it:


Hiring efficiency:

How long does it take, measured from initial expression of interest through offer of employment signed, for a typical candidate cold inbounding to the company?

What is the *theoretical minimum* for *any* candidate?

How long does it take, as a developer newly hired at the company:

* To get a fully credentialed machine issued to you
* To get a fully functional development environment on that machine which could push code to production immediately
* To solo ship one material quanta of work

How long does it take, from first idea floated to "It's on the Internet", to create a piece of marketing collateral.

(For bonus points: break down by ambitiousness / form factor.)

How many people have to say yes to do something which is clearly worth doing which costs $5,000 / $15,000 / $250,000 and has never been done before.


A brief analysis and comparison of the CSS for Twitter's PWA vs Twitter's legacy desktop website. The difference is dramatic and I'll touch on some reasons why.

Legacy site *downloads* ~630 KB CSS per theme and writing direction.

6,769 rules
9,252 selectors
16.7k declarations
3,370 unique declarations
44 media queries
36 unique colors
50 unique background colors
46 unique font sizes
39 unique z-indices

https://t.co/qyl4Bt1i5x


PWA *incrementally generates* ~30 KB CSS that handles all themes and writing directions.

735 rules
740 selectors
757 declarations
730 unique declarations
0 media queries
11 unique colors
32 unique background colors
15 unique font sizes
7 unique z-indices

https://t.co/w7oNG5KUkJ


The legacy site's CSS is what happens when hundreds of people directly write CSS over many years. Specificity wars, redundancy, a house of cards that can't be fixed. The result is extremely inefficient and error-prone styling that punishes users and developers.

The PWA's CSS is generated on-demand by a JS framework that manages styles and outputs "atomic CSS". The framework can enforce strict constraints and perform optimisations, which is why the CSS is so much smaller and safer. Style conflicts and unbounded CSS growth are avoided.

Original Tweet