Twitter | Search | |
Brandon Williams
Subterranean homesick mathematician. Previously . Working on Available for hire:
6,137
Tweets
464
Following
3,361
Followers
Tweets
Brandon Williams 6h
Replying to @_iains
very interesting! I'll have to look more into that. also, the entire codebase of the site is open source, so you can see how we use docker and docker-compose to deploy:
Reply Retweet Like
Brandon Williams 7h
Replying to @_iains
Yep heroku! Using docker it’s quite easy
Reply Retweet Like
Brandon Williams retweeted
Bryan Irace Apr 20
Swift on the server is coming (and/or already here).
Reply Retweet Like
Brandon Williams Apr 19
Replying to @mbrandonw
All of that is to say... we have some really fun things coming to soon!
Reply Retweet Like
Brandon Williams Apr 19
Replying to @mbrandonw
Having done Ruby and Rails for a very long time I must say that making a website in Swift is almost magical. It has really increased our productivity in allowing us to radically iterate on our MVP.
Reply Retweet Like
Brandon Williams Apr 19
Replying to @mbrandonw
And then snapshot testing allowed us to make some pretty big changes to our CSS and we instantly saw how that affected the entire site. It even caught some subtle bugs that would have been very easy to overlook.
Reply Retweet Like
Brandon Williams Apr 19
Replying to @mbrandonw
Swift's type system and features allowed us to refactor models without fear of breaking anything. It was truly a case of change the data type layout, fix the compiler errors, and it worked.
Reply Retweet Like
Brandon Williams Apr 19
In the past 4 days we have merged and deployed more than 3,000 lines of code to , including some really deep refactorings of models and styles, all without a worry of breaking anything!
Reply Retweet Like
Brandon Williams Apr 19
You might be interested in this swift evolution thread of 's
Reply Retweet Like
Brandon Williams Apr 19
Replying to @chriseidhof @EyalL
oh sorry, lost track of this. Key paths are nearly the same as lenses, but not entirely. Also, key paths have optional changing `\User.friend?.name`, but that gives you a *non*-writable key path, so it doesn't capture what a prism can do.
Reply Retweet Like
Brandon Williams retweeted
Point-Free Apr 19
Algebra's one of our favorite ways to eliminate impossible states at compile time, but it's not the only way! This week's ep explores one fun trick to make your code safer and bug-free!
Reply Retweet Like
Brandon Williams Apr 19
Yup yup, the partial isos that power the router are generated! We could even get rid of that if swift ever synthesized properties for enum cases.
Reply Retweet Like
Brandon Williams Apr 18
We got a request to add a redirect for a particular page on , and it gives me a chance to show off how easy it is to do that in the code. We even have a snapshot test for it.
Reply Retweet Like
Brandon Williams retweeted
patrick thomson Apr 17
New blog post: deriving hylomorphisms, Elgot algebras, and Elgot coalgebras, and exploring the power derived from the composition of unfolds and folds.
Reply Retweet Like
Brandon Williams Apr 18
I am also VERY excited for next week’s episode...
Reply Retweet Like
Brandon Williams retweeted
Felipe Espinoza Apr 17
Another mind blowing episode of , amazing show guys!! Keep up the good work, every week i feel my whole vision of swift, types and functions get expanded :D
Reply Retweet Like
Brandon Williams Apr 18
Yeah totally. and I considered covering that Newtype protocol too, but decided to focus on just Tagged. Hopefully Swift will give us a proper newtype someday, but even then there is still a use for Tagged.
Reply Retweet Like
Brandon Williams Apr 16
Replying to @tim_vermeulen
Hopefully Swift will get some more advanced type level features someday that obviates the need for this. Haskell and Purescript have something called Proxy to deal with this:
Reply Retweet Like
Brandon Williams Apr 16
Replying to @tim_vermeulen
You'd create a new tag type for each property: struct User { let id: Id let age: Age typealias Id = Tagged<User, Int> enum AgeTag {} typealias Age = Tagged<AgeTag, Int> } This is what we do for the email example in the readme of
Reply Retweet Like
Brandon Williams retweeted
Paradigm’s Lost Apr 16
The slides from our talk at , “Becoming an Effective Contributor to Swift” , are now available
Reply Retweet Like