Meet & Greet #110
Replies: 1 comment
-
[Ported comments from the old Witchcrafters Discourse] This is really nice :slight_smile: Hi! My name is Raúl and have been looking at Witchcraft for a while now. Maybe this is the right time to start, looking forward to see how this evolves 🐈 @creminology A bit of background. My university studies in computer science were a bit backwards in retrospect. We used Pascal in our first year and wrote an airline booking system in COBOL in our second year. This was in the 1990s! Compilers were expensive, so I’d read books on Smalltalk and Eiffel cover-to-cover but never get to code in those languages. I fell in love with the promise of object-oriented programming, even attending an OOPSLA conference in Washington DC in 1993. I’m from London. I changed industries later that year, but I did play with WebObjects when it dropped its $50,000 license fee, which was then in the midst of moving to Java from Objective-C. I missed out on transformational programming developments like version control until I returned to programming more than a decade later when I built a subscription database-as-a-service (DAAS) in Ruby on Rails for my own media company. Since 2015, I’ve been exclusively writing in Elixir and Elm. I have a SAAS project that I’m developing, but I’m taking time to get the tech right. I originally planned it as a hybrid between Elixir and Elm using Phoenix Channels. But after spending last year exclusively programming in Elixir, I’ve returned to the frontend as a much stronger Elm programmer. And I’m going to see how far I can take the SPA vision with CRDTs, privacy-first development, etc. In my year exclusively writing Elixir code, mostly for data wrangling, I did use Witchcraft (Haskell fan-fiction) and Norm (Eiffel fan-fiction) to bring over some of my expectations from Elm. I got to appreciate the power of functors (~>/2) and semigroups (<>/2) to make my code much more expressive. (I was doing things like merging Airtable bases into meta-bases, which was semigroups all the way down to the individual table row.) Despite the quality of Witchcraft’s documentation, I hit a wall when trying to build an algebreic graph (inspired by Andrey Mokhov’s research and Haskell library). So, under quarantine, I put my head down and completed the exercises in the first 600 pages of Haskell Programming From First Principles, which is probably what leveled up my Elm skills. That brought me right up to the Semigroup chapter, which I haven’t yet read! It’s a 1200 page book and I think the testing chapter temporarily burnt me out. Related or not, I’ve returned in the past couple of weeks to the backend and found that I’ve also become a much more confident Elixir programmer. I’ve yet to re-embrace Witchcraft, but have been experimenting with the TypeCheck library over Norm. I’ve been writing small (< 2000 lines), self-contained, OTP-dependent services that process CouchDB changefeeds, etc, to get my feet wet again. Moving back and forth between Elixir and Elm is interesting because the communities are quite different. Both seem healthy and are full of very smart people who share their knowledge, but Elm is certainly less confrontational. I agree with Dave Thomas’ recent lament over the decision that Elixir is now a “finished” language, especially after I watch a Brooklyn conference talk and want to see the ideas within her slides gain wider acceptance. I’m interested in helping out with tutorials for Witchcraft, especially if they can be peer-reviewed by others here. As well as introductory tutorials, perhaps taking a common paradigm in Elm and Haskell (like “making impossible states impossible”, etc) and demonstrating how that can be achived in Elixir with the Witchcraft suite. Witchcraft needs community championing as much as maintainers. Stephen PS: I’m keeping an eye on developments at Fission (UCAN, etc) and Verida (Verida Data Wallets) since both have a similar privacy-first vision. PPS: My proof that Witchcraft (or rather Algae) plays nicely with Norm: Hi everyone! I'm Carlo, from Mexico City, I'm a software developer, I've working with Elixir from the last two years, it's a special situation because here at CDMX there are few companies using this kind of technologies, instead of this they're prefer use other languages as Java, Javascript and Php. Also I'm working hard on my personal project Visual Partnership, a project to explore the Visual Thinking as learning approach and search how to combine this for technical resources. You can see some of my work here: Livew Views Blog Post, GitHub Repo Gallery Hi All! I'm Brian, I was on the call just now briefly, I was the one with the Exercism idea and the offer to be a guinea pig! Feel free to reach out here or at brian at my-last-name.me (my username is first initial plus last name) Hey 👋 I'm Pedro, @ordepdev on the interwebz, I used both Scala and Elixir for data pipelines (wrangling and serving) and I really miss some functional data structures from Scala/Haskell in Elixir; most of the users will say it's overkill, but I still like to use them; guess what, Witchcraft is the dark magic I need 🧙 Hey everyone, 😁 I am Dasky, I just finished my first year of university at the Cologne University of Applied Sciences, B. Sc. Code & Context, and have been working with Elixir for about 6 months now. I fell in love with functional programming and am happy to be here and contribute to witchcraft! Hi everyone, I discovered Witchcraft recently, since I started diving in Elixir. I have a broad interest in general categorical concepts and I did a lot of linear algebra for 3D more than a decade ago, so I see the point of using these abstractions in code, but I still struggle to communicate clearly about these concepts or use them appropriately. I think Elixir could be a good place to practice this. I have good hope that learning more "intimately" these abstract concepts, I would learn better how to design distributed systems. Also Elixir with Witchcraft could be the ideal tool for this kind of work. |
Beta Was this translation helpful? Give feedback.
-
Hello 👋
Welcome to the Witchcraft community chat! This is a place to discuss further development, maintenance, promotion, and use of these libraries (and this style broadly).
Feel free to make a post about who you are, and what brought you here. Want to just jump into a thread or read? Totally okay too.
Warmest welcomes,
Brooklyn Zelenka (@expede)
FAQ
Whatcraft? Witchcraft is a suite of libraries in the Elixir programming language ecosystem that provides structured abstractions and algebras for programming clearly & cleanly. It helps you reason better about code regardless of its size or complexity. It’s also a port of a lot of ideas from languages like Haskell, Elm, OCaml, and PureScript.
Docs: https://hexdocs.pm/witchcraft/
GitHub: https://github.com/witchcrafters
Beta Was this translation helpful? Give feedback.
All reactions