|
@Conaw | |||||
|
41. Reagent (A Clojurescript wrapper around React) is way easier to read, write, and maintain than vanilla react.
|
||||||
|
||||||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
31. Urbit is an interesting project, but won't actually take off unless/until someone writes an X -> Hoon or X -> Arvo or X -> "whatever" compiler because no one actually wants to think in Yarvis' pig latin.
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
32. Hosted languages that provide nicer abstractions over the libraries from their host language have a huge huge advantage over new languages starting from scratch.
The ability to work with libraries from an existing/broader ecosystem is damn near table stakes for a new lang
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
33. The world is a worse place because MIT switched from teaching LISP in the intro CS courses to teaching Python.
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
34. If you haven't learned a programming language for a reason other than
A) It was a assigned to you in school
B) You thought it would make you money
Then I doubt your
a) curiosity
b) open-mindedness
and as a result
c) competency as a engineer
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
35. There are two problems for programming languages to solve
1) Performance on machines
2) Usefulness as a tool for thought
Right now those are complected -- Intentional Software was doing something interesting toward separating those two out
en.wikipedia.org/wiki/Intentionā¦
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
36. **Technical people** are just people who "try to understand"
Killing conversations with "I'm not technical" is a dangerous practice that will hurt you (and those around you) in the long run.
roamresearch.com/#/v8/help/pageā¦
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
37. Your type system won't save you
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
38. Provably correct doesn't mean it works
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
39. Contracts and gradual typing > strong types
youtube.com/watch?v=XTl7Jnā¦
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
40. Many people with 10 years of experience in software engineering haven't actually grown or learned much in that time.
They've done the same first year 10 times on repeat.
Polyglots generally avoid falling into this pattern.
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
42. Dan Abramov has said that Redux is not a javascript clone of Re-frame (the CLJS framework for writing SPAs in react), it is just that both were inspired by elm and arrived at similar pattern...
But even so... Re-frame was first and still much better in almost every way
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
43. The Re-frame documentation is most informative/entertaining read-me on github
github.com/day8/re-frame/ā¦
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
44. Clojurescript is an EXCELLENT choice for consumer or SaaS internet startups.
If you are starting a new company and can afford it, you should spend invest a few months in learning it first and building in it vs your normal stack, will pay huge dividends over time.
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
45. A great engineer can learn Clojure well enough to be productive in under a month.
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
46. Setup for react development (Webpack/Babel/100 other tooling things) was a dumpster fire in 2015.
It's probably still bad.
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
47. Create-React-App and Gatsbyjs probably have made setup for Javascript projects much better.
Still probably not as easy to use or as powerful as shadow-cljs.
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
48. Typescript is mostly hype.
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
49. VScode is a typescript IDE, is probably pretty magical, and I am likely missing some cool sources of tools for thought inspiration by not playing in that ecosystem.
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
50. Airtable is on track to be the Wordpress of relational databases.
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
51. Graph databases are far better than relational databases for most things.
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
52. Amendment to 4. No one who is loud about OO is doing real OO.
Agree Erlang is OO
twitter.com/weskerfoot/staā¦
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
53. In general, folks thinking about programming languages and computing more broadly, don't know enough history.
Folks interested in the topic should read "The Dream Machine" to start and not blindly trust shitposters like me.
VN def over-hyped tho
twitter.com/Grady_Booch/stā¦
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
54. One reason to know history is so you can see what elements of your language were put in place to deal with constraints in your environment that no longer exist
We don't use punch-cards, we don't need a distinction between expressions and statements
paulgraham.com/diff.html pic.twitter.com/ZrFTndLQfy
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
55. Questions are not a sign of ignorance, they are a sign you are paying attention.
It's more than OK to ask people to define terms or give a concrete example, and ok to stay in conversations you can barely understand.
Applies to conversations in and about all languages.
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
55. Meta opinion about my opinions on programming languages
twitter.com/Conaw/status/1ā¦
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
56. Datomic is far and away the best graph database available today.
Has Java and Clojure APIs, non jvm languages can use rest apis.
If you're a startup, worth being in Clojure though.
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
57. Listen, I'm not saying he didn't have massive contributions, esp on the math side.
Just know too many AI bros (who I still love) who've said things like "We just need 50 Von Neumanns to build an AGI god and we're set"
No.
And he's not all that.
twitter.com/zhaphod/statusā¦
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
58. The most important idea in Datomic is that there is no reason to overwrite data just because it changes.
It is more than a graph database, it is a graph database with a notion of time and history built in.
What was Joe's address as of Dec 2017?
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
59. The main limitation of the EAV tuples (popular in Semantic Web land) is that you can't easily describe the relationships.
You get the FACTS, but it is a bit tricky to add information to those facts like "where did this info come from", or make statements like
If A then B
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
15. pro |
|
60. To model human thought in a computable way you need to solve the problem in 59, you move closer to this goal if you give each "fact" or "edge" in the graph a unique identifier.
Long history of this in Associative Databases
Example in @RoamResearch
roamresearch.com/#/v8/help/page⦠pic.twitter.com/cBYtMW0npe
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
16. pro |
|
My shit posting on Eve has evoked the ire of @ibdknox, whose work I do greatly respect.
So will offer my more nuanced opinions on Eve and programming languages related to tools for thought, esp related to @RoamResearch and see if that gets me the last 40
twitter.com/ibdknox/statusā¦
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
16. pro |
|
61. Designing a programming language - a medium for people to express their thought in a machine computable way is insanely hard.
Perhaps even harder to get the time and funding to do that level of deep work.
Exponentially harder to do on VC timescales.
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
16. pro |
|
62. The fact that Chris and team were able to get venture funding AT ALL is an insane testament to the them, and quality of prior work /vision.
The fact that they got funding from some of the top investors in silicon valley put the project in historic category.
Lot 2 liveup 2
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
16. pro |
|
63. Light-table (from Eve team) promised a smalltalk like IDE for devs using clojure or js
Easy access to docs, organize workspace by function not file, see values pass through
Huge potential for intelligence augmentation!
Easy switch for a userbase
youtube.com/watch?v=H58-n7⦠pic.twitter.com/Lvta7NqJYD
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
16. pro |
|
64. Alpha sheets (later project, diff team) let you use R & Python code in a collaborative excel like spreadsheet.
Was like Light Table but from another direction.
Adds programming to Excel, versus adding better reactive env to programming
youtube.com/watch?v=hddcNv⦠pic.twitter.com/fM5gw4H6ws
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
16. pro |
|
65. Light table had a very Bret Victor type feel
make it easier to explore what you could do
make it easier to get a handle on what is going on in the program in real time
give yourself a bunch of contextual information and focus your attention only on what matters
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
16. pro |
|
66. That project (Light Table) thus offered huge potential for "intelligence augmentation"
Allow people to solve problems that they otherwise wouldn't be capable of solving
Invent things they otherwise wouldn't have been capable of inventing
For beginners or experts alike!
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
16. pro |
|
67. With both AlphaSheets and Light Table, you started with a tool and paradigm people were familiar with, and you added in either more programming power or a more powerful environment.
Both gave the users a clear path from where they were to a better world.
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
16. pro |
|
68. Risk with both of those is incrementalism.
If you think that both excel and programming lead toward a dead end, perhaps you have to rethink things from first principles and go back to go forward.
Seemed like Chris's view
chris-granger.com/2014/03/27/towā¦
I don't *exactly* agree pic.twitter.com/nM5Pl9e01W
|
||
|
|
||
|
Conor White-Sullivanš§¢
@Conaw
|
16. pro |
|
69. My take is you need co-evolution of tools and culture.
Tools shape us, then we shape our tools.
I believe in bootstrapping - in the Doug Engelbart sense.
Programming languages are as much about the community as about the underlying technology. pic.twitter.com/ahKcJIlvsT
|
||
|
|
||