This is Antoine's Typepad Profile.
Join Typepad and start following Antoine's activity
Join Now!
Already a member? Sign In
Recent Activity
# What's New in v3.3.1 ? * Refactor/add unit tests * Remove the ResourceHandler (v2 API) that was marked as deprecated a year ago. * Start using the simplifications (gofmt -s) * Minor documentation improvements # New third party Middlewares * [ForceSSL]( by @jadengore Continue reading
Posted Jan 18, 2016 at ant0ine's blog
## What's New in v3.3.0 ? * Include `charset=utf-8` in the JSON response Content-Type (See issue about Chrome) * Add the ability to customize the field name in the error response. * Additional HTTP methods shortcuts (Thanks @sebest !) * Add error is the parsed JSON payload is empty (Thanks @sebest !) ## New third party Middlewares * [AuthToken]( by @grayj * [SecureRedirect]( by @clyphub Continue reading
Posted Nov 27, 2015 at ant0ine's blog
## What's New in v3.2.0 ? * New shortcut methods to create Routes more easily: `Get(...), Post(...), Put(...), Delete(...)`. It also has the benefit to make `golint` happier. And `&Route{...}` remains available for any other use case. * New [Websocket]( example. (Thanks @wingyplus !) * [Security fix]( on the Jsonp Middleware. (Thanks @sebest !) * Documentation improvements Continue reading
Posted Nov 27, 2015 at ant0ine's blog
## What's New in v3.1.0 ? * A new **IfMiddleware** that allows to conditionally execute a Middleware at runtime. * Better error messages when Env variables are missing (Timer, AccessLogApache, and Status Middlewares updated) * New Statsd example * New JWT authentication example * Improved code coverage ## New Third party Middlewares * [JWT]( authentication Middleware by @StephanDollberg * [Statsd]( app monitoring Middleware [Releases on Github]( Continue reading
Posted Apr 4, 2015 at ant0ine's blog
## What's New in v3 * Public Middlewares. (12 included in the package) * A new App interface. (the router being the provided App) * A new Api object that manages the Middlewares and the App. * Optional and interchangeable App/router. ## Here is for instance the new minimal "Hello World!" api := rest.NewApi() api.Use(rest.DefaultDevStack...) api.SetApp(rest.AppSimple(func(w rest.ResponseWriter, r *rest.Request) { w.WriteJson(map[string]string{"Body": "Hello World!"}) })) http.ListenAndServe(":8080", api.MakeHandler()) *All 19 examples have been updated to use the new API. [See here](* ## Deprecating the ResourceHandler V3 is about deprecating the ResourceHandler in favor of a new API that exposes the Middlewares. As... Continue reading
Posted Apr 4, 2015 at ant0ine's blog
*V3 is the opportunity for API changes and improvements.* In the past two years Go-Json-Rest has changed a lot. It got the notion of middleware, bringing basic features like Auth, CORS, JSONP that were missing at the beginning. Over time the list of options and settings has doubled. This is reflected in the main object **ResourceHandler that has become a long list of options**. It works, but it could be more convenient to use. The goal of the v3 is to provide a replacement for `ResourceHandler` that is simpler to use and more flexible. The ResourceHandler does not do much,... Continue reading
Posted Apr 4, 2015 at ant0ine's blog
C'est tres vrai. L'aspect creatif du metier est souvent neglige en France. D'ou le peu d'innovation.
1 reply
Remember five years ago when Safari was the best mobile browser ? Maybe even the best desktop browser. Times have changed. I’m really excited by the amount of innovation in web technologies these days. Chrome and Firefox get new features at an incredible pace and even Microsoft decided to follow the rhythm. In this world, Safari is lagging behind. No SPDY support. No Navigation Timing API. No HTML templates. No Indexed DB. No WebP, WebM or Ogg support. No CSS Feature Queries. And outdated developer tools. Is it intentionally defensive, to protect their app business? Or is it just because... Continue reading
Posted Nov 29, 2013 at ant0ine's blog
Antoine added a favorite at abe hassan | blog
Jun 17, 2013
Antoine added a favorite at hello typepad
May 19, 2013
One month ago I wrote some benchmarks for my Go-UrlRouter package. Yesterday Go1.1beta2 has been released, lets see how much faster it is for this particular project. Go1.0.3 go-urlrouter$ go test -bench ".*" PASS BenchmarkNoCompression 50000 43049 ns/op BenchmarkCompression 100000 25114 ns/op BenchmarkRegExpLoop 2000 1090131 ns/op ok 7.748s Go1.1beta2 go-urlrouter$ /usr/local/go/bin/go test -bench ".*" PASS BenchmarkNoCompression 100000 27635 ns/op BenchmarkCompression 100000 19632 ns/op BenchmarkRegExpLoop 2000 1001683 ns/op ok 7.419s That gives us: BenchmarkNoCompression 36% less time BenchmarkCompression 22% less time BenchmarkRegExpLoop 8% less time The Trie implementation makes a heavy use of "maps" (especially when not compressed). 36%... Continue reading
Posted Apr 8, 2013 at ant0ine's blog
Yes, this is definitely possible. But I'm not sure it should be part of this framework. By providing this helper, you make some assumptions about the shape of the URLs for this resource, and the number of endpoints. This is the beginning of a kind REST schema. This is something nice to have, but I think it belongs to a layer on top of go-json-rest.
Toggle Commented Apr 8, 2013 on Introducing Go-Json-Rest at ant0ine's blog
1 reply
A quick and easy way to setup a RESTful JSON API in Go A few weeks ago I wrote Go-UrlRouter, here is the next step, Go-Json-Rest, a very small REST framework built around it. First, a few thoughts, kind of design principles for this project. REST is everywhere. The full-featured web frameworks are moving from the server side to the client side. Django and Catalyst are dinosaurs, and are replaced by Dojo, Ember.js, backbone.js, JQueryMobile, … And these Javascript frameworks are usually talking to the server through a REST API. Same for the native mobile apps, most of them are... Continue reading
Posted Apr 3, 2013 at ant0ine's blog
Antoine added a favorite at abe hassan | blog
Feb 28, 2013 provides a universal subscribe button for the web. It’s open, it stores the settings on your local HTML5 storage, and it supports any reader. Thanks @julien51 for this service, it's awesome, the web should have had that years ago ! It’s great, but, but, but, It needed a Chrome Extension. Here is my little contribution: Install from the Chrome Store (Source code on Github) Continue reading
Posted Feb 11, 2013 at ant0ine's blog
When a web server receives a request, it has to figure out what piece of code to run to process this particular request. Any element of the request can be used for this routing, but in practice, most web frameworks use the path part of the URL. Defining expressions like these ones: "/resources/:id" => "some code to do something" "/users/:name/profile" => "some code to do something" ... And these implementations seem to use the same strategy to determine the matching route. They convert the path string of each rule into a regular expression, evaluate the rules in the defined order,... Continue reading
Posted Feb 7, 2013 at ant0ine's blog
Antoine added a favorite at Art de Vivre
Jan 27, 2013
Antoine added a favorite at The Winter Webb
Jan 27, 2013
B2D (Business To Developers) is something trendy these days. It seems that we, developers, form a special group between Consumers (B2C) and Business (B2B). As an exercise, and to get a better picture of this market, I tried to cut that in categories and find examples for each. Service names are just examples, there are a lot more. But what do you think about the categories ? Source code management Version control, collaboration and bug tracking. Github, Bitbucket, Codebase, ... Project management Task management, bug tracking, project management, agile/scrum tools. Jira, PivotalTracker, Trello, Sprintly, ... Testing and Continuous Integration Test... Continue reading
Posted Jan 22, 2013 at ant0ine's blog
Antoine added a favorite at Art de Vivre
Jan 7, 2013
Antoine added a favorite at abe hassan | blog
Dec 26, 2012
Antoine added a favorite at Hey!
Nov 30, 2012
Antoine added a favorite at abe hassan | blog
Oct 31, 2012
Antoine added a favorite at while(1) { fork; }
Oct 1, 2012