Y
HN Search
Hacker News Search
new
|
comments
|
top
|
jobs
adamkl
searching PlanetScale…
1.
▲
2.
▲
3.
▲
4.
▲
5.
▲
6.
▲
12 ms
·
61.
▲
by
adamkl
6y ago
I believe Honey SQL might be just what you are looking for: https://github.com/seancorfield/honeysql
62.
▲
by
adamkl
6y ago
Agree that converting between JS and CLJS data structures is a pain. The best approach to dealing with that is to isolate that interop at the edges of your program. I’m currently, coincidentally, working on a wrapper for Express to do just
63.
▲
by
adamkl
6y ago
I definitely agree about the benefits of a mainstream language/big ecosystem when it compares to something more niche (Although ClojureScript with shadow-cljs [0] has an excellent interop story with the JavaScript ecosystem). I’m not s
64.
▲
by
adamkl
6y ago
I think it’s interesting that libraries like Immutable.js, Immer and Ramda show that there is a real appetite amongst JavaScript developers to embrace a more functional approach, but at the same time languages like ClojureScript, Elm, and R
65.
▲
by
adamkl
6y ago
I’ve found Grokking Simplicity [0] to be a great, pragmatic introduction to solving real-world problems with “functional thinking”. All the code is JavaScript and it tries to walk you through how you might solve common, everyday business pr
66.
▲
by
adamkl
6y ago
”Currently that runtime is a generic stateful "service" implementation provided by these libraries” This is how I approached using XState in a proof of concept last year. I created a “service layer” made up of XState machines th
67.
▲
by
adamkl
6y ago
> So while FP is just another tool, it's also a framework for thinking that helps people make better choices I’ve been getting more into functional programming this past year (via Clojure, though my day-job is mostly JavaScript&#x
68.
▲
by
adamkl
6y ago
To be perfectly honest, in this scenario, there isn't much of an advantage. The container approach is lighter weight, and I found it easier to manage the configuration via Dockerfiles. Managing a full VM with the OS install is a bit of
69.
▲
by
adamkl
6y ago
It depends on how large your organization is and what specific quirks need to be configured to do your work. Its not unusual for large organizations to have internally hosted registries (Artifactory), source control and network proxies. Thi
70.
▲
by
adamkl
6y ago
To make it workable I had to just give up on the local host file integration. I basically used the container like a VM. Configured it with all the tools I normally use (e.g. OhMyZsh, etc) and had it constantly running in the background. I w
71.
▲
by
adamkl
6y ago
Rich Hickey gave a good talk on core.async and it does seem pretty similar in concept: https://youtu.be/drmNlZVkUeE
72.
▲
by
adamkl
6y ago
Nubank seems to be doing just fine: “From [its] start in 2013, Nubank has grown to 600 Clojure developers, running 2.5 million lines of Clojure code in 500 microservices”[0] [0] https://www.fintechfutures.com/2020/07&#x
73.
▲
by
adamkl
6y ago
> I feel about them the way I do about switch statements - they're brittle and inextensible. What is meant by this statement is that pattern matching violates the open/closed principal. If you add a new type to switch on, you n
74.
▲
by
adamkl
6y ago
I think just because someone is able to do something similar in another language doesn’t mean that the power of a fully integrated REPL is overstated. Most developers are using languages where this sort of thing isn’t possible, and for them
75.
▲
by
adamkl
6y ago
For anyone who would like to see what REPL-driven programming looks like in practice, take a look at this video here: https://vimeo.com/230220635 The author uses the Clojure REPL to walk through the process of developing so
76.
▲
by
adamkl
6y ago
This is one of the things that is preached pretty often in the Clojure community: it’s all about the data Describing your application behaviour in data not only allows for all sorts of static analysis (as David mentioned above) but also the
77.
▲
by
adamkl
6y ago
Funny you mentioned login state. I've used it for the exact same thing. I had a "userService" machine (embedded in a React UI) that handled all the legwork of an OAuth2 flow and ended with the user in an "authenticated&q
78.
▲
by
adamkl
6y ago
Additionally, you can use state machines server side to track stateful processes by simply serializing the “current” state of the machine and storing it somewhere. With the next request, reload the “current” state of the machine and transit
79.
▲
by
adamkl
6y ago
Agree. I’m a huge fan of this approach when developing complex UIs, but you can definitely run into “state explosion”. When you rigorously enumerate all the implicit states in your system you quickly realize that your system can have a lot
80.
▲
by
adamkl
6y ago
This approach is a big boon to the development of complex UIs. If you are tired of littering your React/Angular/Vue/etc code with a litany of state flags (“isLoading”, “isError”, etc)[0] take a look at the de facto canonical
81.
▲
by
adamkl
6y ago
There’s actually nothing server specific about GraphQL. The specification makes no mention of transport layer, it’s simply a type system + query executor. You can pretty easily (if you have experience with the GraphQL reference implementati
82.
▲
by
adamkl
6y ago
Rich Hickey has a bunch of good talks about simplicity, functional programming, and immutability which sort of lays out the ethos behind Clojure, and how it differs from other (primarily object oriented languages), but for me, one of the ma
83.
▲
by
adamkl
6y ago
> "doing the matching in multiple places and making sure that we cover all cases in all places is starting to look like a maintenance nightmare" That sounds more like an indictment of functional programming rather than Clojur
84.
▲
by
adamkl
6y ago
> We ended up in situations where we had lots of data that looked very similar entering from common endpoints that required different business logic at multiple points in the pipeline. If you’re writing idiomatic Clojure this is the tou
85.
▲
by
adamkl
6y ago
If it's in a code review, it's been committed to some branch in source control. If it makes it past the code review, it's now a part of your product. If people want to use this approach as a training exercise (as mtlynch sugg
86.
▲
by
adamkl
6y ago
I'm not sure this is controversial so much as it is just terrible advice! Are you really suggesting that developers purposely introduce bugs into a code base just to keep reviewers on their toes? It may seem like a relatively harmless
87.
▲
by
adamkl
6y ago
I’m very new to k8s, so forgive me if this is a silly question, but how is this different than Lens [0]? One of the first tools I was told to download by a k8s expert friend of mine was Lens, and it has made the experience of learning about
88.
▲
by
adamkl
6y ago
> The domain model is just a data structure that reflects functional requirements, and the application is just a bunch of code that directly or indirectly operates over that data structure. You are right! I learn something new every day.
89.
▲
by
adamkl
6y ago
This article seems to be more focused on code organization, which I guess ties into the idea of a bounded context , but doesn't really dive into the nitty-gritty of DDD. The most important aspects of domain driven design (as per Eric
90.
▲
On the fractal nature of effort estimates
(realfiction.net)
2 points
by
adamkl
6y ago
|
0 comments
More ›