- I am learning Elixir and Phoenix.
- I am learning how to learn more effectively.
- I am learning how to bootstrap a business.
- I am building a product based on my learnings above.
Awesome!
- I am working on a HTTP server in elixir, https://github.com/CrowdHailer/Ace
- Trying to learn about releases, and many infrastructure topics, e.g. docker kuberneties etc.
- working out what it means for elixir applications to be clustered and cloud native
I’m working on a site where I’ll post music from around the world—like a blog but organized by country. I’m using it to learn Phoenix!
I’m also always thinking of what libraries and applications I can make.
I’m working on a Natural Language Processing and Text Summarization library for Elixir:
https://github.com/nicbet/essence | https://hex.pm/packages/essence
My pet project is a phoenix-based framework for easier writing of Apple tvOS10 based apps, substituting XHR requests with channels, and extending eex layouts with TVML. No release yet.
Hey @AstonJ, regarding spacemacs check out the spacemacs ABC series https://www.youtube.com/watch?v=ZFV5EqpZ6_s&list=PLrJ2YN5y27KLhd3yNs2dR8_inqtEiEweE
Awesome, thanks - added it to our Spacemacs Wiki
I’ve mostly been working on a stripped down Phoenix app. It’s literally just Phoenix+Ecto+Absinthe (GraphQL), no routes, controllers, views, or channels (although I might have some a bit later, need to think a bit more about it).
Other than that, I’ve been doing a lot of research into Riak and Hibari (I know, not Elixir, but it is still BEAM related). And plan on watching some of the talks from the elixir conf later this week .
Awesome, let me know if you run into any issues. Please try out our v1.2
alpha release, it should be 100% functional we’re just still testing it “in the real world” before releasing beta / RC.
Pretty much all went smoothly , only thing I noticed was regarding Absinthe.Plug (v1.2), that it returns different status codes now. These seem more appropriate than the previous ones, although I was unsure if all GraphQL errors are supposed to return 400 or not?
It seems like type errors return 400, but user generated errors do not. Looking at the plug it looks like maybe all GraphQL errors should return 400?
Basically should something like this return 400 or 200 with the new plug?
defmodule Schema do
use Absinthe.Schema
query do
field :test, type: :integer do
resolve fn _, _ ->
{ :error, "blah" }
end
end
end
end
# What Absinthe.Plug v1.2 currently returns:
# curl -i -X POST -H "Content-Type: application/graphql" -d '{ test }' http://localhost:4000
# HTTP/1.1 200 OK
# ...
# {"errors":[{"message":"In field \"test\": blah","locations":[{"line":1,"column":0}]}],"data":{}}
If it is meant to return 400, then it is because the user created error is creating a GraphQL response with a data field. While the plug seems to be matching on each field individually, essentially: {:ok, %{data: _}}
followed by {:ok, %{errors: _}}
. So simplest fix would be reordering the matches so the :errors
match is handled before the :data
match.
It’s the difference between validation errors and execution errors. v1.2 is a lot more strict about how it handles errors. If there are any validation errors it will refuse to execute at all since we can now do full document validation prior to any execution. Those errors by convention also will give you a 400.
User errors happen during execution. A 400 would be the wrong response because it isn’t a “bad request”, since we’re able to execute it.
I’m porting this library to Elixir:
Mostly for fun! Learning a lot about strings and Unicode.
Building the administration interface for some HTTP services actively used at the company I work for.
ngw
- Learning Elixir
- Understanding FP concepts
- Preaching Elixir
-
Working on a Library that makes working with
Ecto
even easier - Collecting cool little elixir snippets in to a package
- Trying to get
exprotobuf
to work with Protobuf v2 - Reverse engineering / reimplementing Google Play API in Elixir
Just finished deploying a test app with edeliver and disillery to set the stage for releasing my first production Elixir app.
I’m trying to progress with ExParse. A side project of mine, which I do for educational purpose. I do hope that I do get a better grasp compiler theory and do pass the exam this time
These days I’ve been using a few hours building a tiny concatenative language Rex on top of Elixir syntax, still very very experimental, but would like to experiment with the idea of tacit programming in elixir. Also have a few tiny libs I mostly use at my day-work (also elixir based) happy_with, pit, params
Also not Elixir specific but Erlang-related is my current work in progress alpha as hell Elm compiler to erlang’s beam vm: Elmer keep-it-secret
These days I:
- check/use this forum (of course) for instance debating about maps and keyword lists
- should (finally) wrap up my deep merge implementation so that I can PR to elixir
- I work on benchee to prepare the 0.5.0 release which will scale units so that those benchmarking results look nicer
- work on benchee_plotly_js to bring an HTML formatter with awesome looking graphs to town
- Hope to make it to the Berlin elixir meetup today, but will have to see how I feel (little cold)
While still getting my footing in Elixir, I already POC-ed to my folks at work how much easier is getting multiple responses from an (internal) API responding with XML docuemnts is in Elixir than in Python.
On the “real world” front, finishing on “Introduction to Elixir” (I think is the name of the book) and will graduate to “The little Elixir & OTP book” after which… the plan is to baby-step more stuff internally at work. Probably won’t cause a shift… there’s too much Python code on production, but, maybe for newer projects…