Want to learn more about DSLs, parsers, interpreters, compilers and language design?
Yes!
How to build a symbol solver for Java, in Clojure

How to Build a Symbol Solver for Java, in Clojure

Last week we have seen how to build models of Java code from source and JAR files. Now we want to be able to solve symbols: in practice we want to link the symbol references in our source code to symbol declarations either in Java source files or jar files. This process is called symbol […]

Building models of Java code from source and JAR files

Building Models of Java Code from Source and JAR Files

Recently I spent some time working on effectivejava, which is on its way to reach 300 stars on GitHub (feel free to help reaching the target :D). Effectivejava is a tool to run queries on your Java code. It is based on another project I contribute to, javaparser. Javaparser takes as input Java source code […]

A tutorial on using Sql2o with Spark and other updates

A tutorial on using Sql2o with Spark and other updates

A few weeks ago I wrote a tutorial on getting started with Spark (the Java web framework). A few readers appreciated it and it was linked by the Jetbrains blog, republished by DZone and republished by the new Spark tutorials blog. After that me and David Åse chatted a bit and we decided to work together on […]

An Erd web server: generation Entity Diagrams from a textual description with Haskell

An Erd Web Server: Generating Entity Diagrams from a Textual Description with Haskell

Last week I started discussing how I am working on improving my approach to diagrams generation, so that it could become acceptable for a Software Engineer. Currently I write a textual description of my entity-diagrams and I generate the corresponding images using Erd. Erd is a fantastic tool written in Haskell which parses its own DSL […]

An approach to UML diagrams and ER models bearable for a Software Engineer

An approach to UML Diagrams and ER Models Bearable for a Software Engineer

As part of my current job at Groupon I have to create diagrams: those nice pictures which make project managers happy. I write basic UML diagrams (State diagrams and Activity diagrams) together with Entity-Relationship diagrams (yes, the ones for the DB). Yes, people want these pictures and I have to create them What Is Wrong […]

Effective Java: a tool to explore and measure your Java code written in Clojure

Effective Java: a Tool to Explore and Measure Your Java Code

When I was working at TripAdvisor we had this internal book club. We started by reading Effective Java, this very famous book from Joshua Bloch. It is interesting and all but I think this book was so successful that most of his advices are now part of the Java culture: most of Java developers know them and sort […]

Getting started with Spark: Lightweight RESTful Application in Java

  Recently I have been writing a RESTful service using Spark, a web framework for Java (which is not related to Apache Spark). When we planned to write this I was ready to the unavoidable Javaesque avalanche of interfaces, boilerplate code and deep hierarchies. I was very surprised to find out that an alternative world exists also for the […]

How people get started contributing to open-source_ A few questions to Luca Barbato, contributor to Gentoo, MPlayer, Libav, VLC, cairo_pixman

How to Get Started Contributing to Open-source? Interview with Luca Barbato

I am hearing a lot of persons interested in open-source and giving back to the community. I think it can be an exciting experience and it can be positive in many different ways: first of all more contributors mean better open-source software being produced and that is great, but it also means that the persons […]

Docker as a Developer: How to Build an Environment You Can Trust

  Lately I have spent a lot of thoughts on building repeatable processes that can be trusted. I think that there lies the difference between being an happy hacker cracking out code for the fun of it and an happy hacker delivering something you can count on. What makes you a professional it is a […]

Continuos Integration on Linux and Windows: Travis and AppVeyor

  Recently I worked on improving the testing and the Continuos Integration (CI) configuration for a few open-source projects. In particular, I have spent some time on WorldEngine, a world generator written in Python, which uses a C++ extension named plate-tectonics. There have been several issues, the main two are: the deployment of the application […]

Course: Using ANTLR Like A Professional

ANTLR Course Image

A complete video course on parsing and ANTLR, that will teach you how to build parser for everything from programming languages to data formats.
Taught from professionals that build parsers for a living.

Strumenta – Consulting

If you need help designing and developing DSLs, languages, parsers, compilers, interpreters, and editors you can check the services page of the Consulting studio we founded: Strumenta. Strumenta Logo

Blog Categories