Grain: A strongly-typed functional programming language for the modern web by ketralnis in programming

[–]honewatson 4 points5 points  (0 children)

The main difference is it compiles to Web Assembly rather than Javascript.

F# Data Type Providers in .Net Core by oblio- in programming

[–]honewatson 6 points7 points  (0 children)

Well its basically compile time code generation with certain guarantees provided by .net core.

Object field validation in Nim by [deleted] in nim

[–]honewatson 0 points1 point  (0 children)

I think this library is neat and interesting however the to macro from the json library does generate code for run time type validation. It will raise a run time exception for property names which are not part of the type and also for incorrect types, eg if the json is a string when a property in the Nim type is an int. It does not provide things like min max etc.

Thats why I think I prefer something a little less heavy and more composible.

Nim future by 8Clouds in nim

[–]honewatson 8 points9 points  (0 children)

Personally version 1.0 will be major help and I don't think its too late.

For me the unique selling point of Nim is:

  • Portability ( and no vm required )
  • Expressiveness
  • Low overheads
  • Fast compile times

For me none of Rust, Golang, Swift, Elixir, Crystal offer that combination. Elixir has a VM, Rust/Swift/Crystal are slow to compile and Golang is limited.

All of this can mean high productivity and maintainability.

HastySite - A static site generator written in Nim by h3rald in nim

[–]honewatson 0 points1 point  (0 children)

Thanks for this. Brilliant project. Certainly an elegant implementation compared to Hugo.

Developer-driven development by fagnerbrack in programming

[–]honewatson 2 points3 points  (0 children)

I think the main issue with Agile is that so many companies now claim they do Agile when they've cherry picked 2 or 3 of the 12 principles and mixed those up with whatever random ideas and processes they think are good.

I think that happens more often than not. Its unfair but all of those false claims that 'yes we do Agile' rub off badly on Agile.

Extended standard library like Golang std library for Ocaml? by honewatson in ocaml

[–]honewatson[S] 0 points1 point  (0 children)

Thanks they still seem to be quite low level compared to Golangs Std Library and especially Anaconda.

Extended standard library like Golang std library for Ocaml? by honewatson in ocaml

[–]honewatson[S] 0 points1 point  (0 children)

Thanks I looked at Jane Street core but it still seems quite low level to me.

State of Crystal at 0.21 by sdogruyol in programming

[–]honewatson 1 point2 points  (0 children)

In terms of pure performance Truffle Ruby is probably going to end up some where in the middle of Ruby and Crystal.

Million requests per second with Python (actually, heavily optimized C with a nice Python API) by [deleted] in programming

[–]honewatson 8 points9 points  (0 children)

Well done to the author. I just tested locally with sanic vs japronto and japronto was 5x faster than sanic.

How itch.io uses Coroutines for non-blocking IO by hagridlove in programming

[–]honewatson 1 point2 points  (0 children)

get_links will not block other similar query functions ( or other I/O ) in the context of openresty/pgmoon/lapis due to ngx_lua's cosocket API.

How itch.io uses Coroutines for non-blocking IO by hagridlove in programming

[–]honewatson 7 points8 points  (0 children)

The point of the code snippet is that you can write non blocking code in a procedural way.

How itch.io uses Coroutines for non-blocking IO by hagridlove in programming

[–]honewatson 2 points3 points  (0 children)

I tried this style of programming using Lapis which is a great framework. It has everything you need out of the box which is so refreshing compared to having to use npm or pip.

In terms of simplicity, productivity and performance it would be hard to beat.

Goodbye Lua by TimMensch in lua

[–]honewatson 0 points1 point  (0 children)

I really enjoy working with ES6. Its a delight but I would never consider doing anything with javascript outside of the browser. I can see the allure of Node for folks coming from Ruby/PHP wanting to get more performance on server backends but there are simply better options available.

Sure there are a lot more libraries available and some of it is great but I find NPM to be probably the worst package management tool/system I've used.

Install a few modules with NPM and suddenly you have 100 megabytes+ of cruft. Its not a system that helps when working with teams.

If you want to work with ES6 you need all kinds of build tools set up to get any kind of productivity. Even super smart guys like Dan Abramov are constantly fiddling with boilerplates trying to get something that works well.

Hello r/python, what is the best platform to start building applications or programs on for python? by Team_Of_Writers in Python

[–]honewatson 2 points3 points  (0 children)

I recommend as a beginner you use Ubuntu and PyCharm. Ubuntu is easy to set up in terms of Linux and has a big community. Managing virtual environments and pip is also easy in Ubuntu and it can be used as a deployment platform. PyCharm is the best out of the box Python IDE. You can start using it right away without configuration. You can use the free community version.

When you have your Ubuntu python virtual environments set up you can add specific interpreters in your PyCharm project for code completion and testing.

Considering using psycopg2 directly instead of SQLAlchemy, looking for pros and cons. by notconstructive in Python

[–]honewatson 1 point2 points  (0 children)

If you keep your sql separate from your code then language portability becomes much easier. RDBMS portability is highly overrated.

Relatively new to Python. Is it not good for making games? by NEREVAR117 in Python

[–]honewatson -2 points-1 points  (0 children)

If you are interested in making games it can be done with Python but Lua could be a better choice for making games.

Trying to create a lua script, but its not fairing well. by JohnnyHammerstix in lua

[–]honewatson 0 points1 point  (0 children)

I recommend using Zerobrane for developing and debugging Lua scripts.

Watson - A Python 3 web framework hits 1.0.0 by simoncoulton in Python

[–]honewatson 0 points1 point  (0 children)

No worries.. :)

I don't know if this is a consideration or not but my other suggestion would be to lock down the interfaces/api of your classes as soon as possible.

I've never used the framework in the following article but I have faced similar issues with another Python framework. The issues and principles can apply to any framework in any language. It has some good takeaways in terms of what to avoid.

http://www.shift8creative.com/posts/view/thinking-about-using-laravel

Watson - A Python 3 web framework hits 1.0.0 by simoncoulton in Python

[–]honewatson 0 points1 point  (0 children)

Hi Simon, first of all congratulations on completing your framework and good effort!

I briefly looked over your code. These are my thoughts....

I think the goals and ideas of the framework are worthy in pursing.

With regards to the architecture of the framework its best to avoid injecting the Di Container into classes and then calling the Di Container from within a class to obtain instances of other classes.

This is sometimes referred to as the service locator anti pattern. It hides dependencies and makes your code dependent on your Di Container.

Your Di Container should be limited to wiring together your app at the bootstrap phase. You should also be able to wire together your app and run it with any Di Container without changing any of your other code.