HNHacker News
TopNewBestAskShowJobs

Ygor

702 karma · joined May 6, 2009

@iBelsa

Software engineer and internet explorer.

Dublin, Ireland | Zagreb, Croatia

submissionscomments
Ygor··on How to properly plagiarize a website
The best part is that the plagiarized site is a nominee for a css design prize?

Infinum is one of the top developers here in Croatia. Nice to see them responding well to this.

Ygor··on Goodbye node-forever, Hello PM2
This is much more powerful than forever. It is a higher level tool. Forever is just here to make your script start again after a crash. This looks like a complete production deployment tool.

And it seems great.

One of the problems newcomers face when starting with node is the deployment of apps. Currently, if you try to search for "the right way", you will find many different methods ranging from custom scripts, modifying your application in some way, to external tools like upstart and monit. Of course, if you use a PaaS solution like heroku, cloudfoundry or similar, some of this problems go away.

All this deployment possibilities are great, in their own way. Pm2 is not here to replace them. It is here to give you a good production ready solution without much hassle. You want to publish your app? Use pm2. If you are facing a larger project, with many special details, then you might consider a custom solution for deployment.

Personally, I am planning to try this out for various smaller apps that need to be up 'n running, but don't have time to setup proper production environments and maintain all those environments.

Ygor··on One cost engineers and product managers don't consider
But, doesn't maintaining both implementation complexity and product usage complexity low require either more development time or better developers?
Ygor··on Rsync.net - a cloud service done the right way
There are 3 different concepts in play here:

- rsync algorithm

- rsync protocol

- rsync program

The algorithm is fairly well described here: http://rsync.samba.org/tech_report/

The protocol documentation is non existant (AFAIK), and basically the only standard is the rsync program itself. The protocol is strange, and there are some quirks, so it is not trivial to replicate or write custom clients.

This is why it is hard to implement an rsync program that can talk to the standard rsync program, but it is not that hard to implement your own client and server which use a custom protocol that implements an rsync-like algorithm.

Ygor··on Today is Goof Off at Work Day
Can anybody confirm if the 20% in google still stands?

And, if it does, is it really 20% of the regular work hours? In my experience, 20% usually comes to something like: "Work on the important project 100% of the work week. After that, work 20% more on something you like."

Everybody I know that works in Google, works far more than the standard 40h per week. Even if you cut of 20% of that time, they still work more than usual. Ofc, that doesn't mean it is generally the case, that's why I'm asking.

Ygor··on Getting out of your comfort zone with Node.js
Maybe that was my point. I am not sure. You see, a new technology was considered and eventually chosen because it was a different kind of project. And so it happened that Node was a perfect fit for the job and a good opportunity to try it out. It is still to be determined if the choice was correct.

It is better to get out of your comfort zone not by doing the same thing in a new way, but by doing a new thing. You are bored with your job? Its not Java, or c#, or c that is boring. It is the stuff you are using it for and the way you are using it.

Anyway, Node is an excellent tool. Just don't use it as an easy way out of your comfort zone.

Ygor··on Getting out of your comfort zone with Node.js
We were used to building stuff in static, strongly typed languages. We had powerful IDE support, stable libraries, old and proven frameworks. There was always the right tool, the right library, the right idiom, the right way.

There was confidence and security in the well known world of stuff you already tried and built. The confidence that came from the knowledge of how difficult or easy something could be. The skill of estimation was fine tuned, and the feeling for effort was strong.

It was not the fact that nothing could go wrong that was comforting. It was the power to know what, when and where could go wrong.

An anxiety-neutral condition, with limited set of behaviors to deliver a steady level of performance, usually without a sense of risk.

A true comfort zone.

Then we chose Node.js for a project. We are yet to see how wise a decision that was business wise, but it was certainly good for the soul.

Ygor··on OrmHate
Maybe this can help:

http://reperiendi.wordpress.com/2007/11/03/category-theory-f...

Ygor··on Node.js v0.8.0 [stable] is out
One thing to note is that there is no standard library. Most of your code will be dealing with modules. The most important thing is to get those dependencies right. Node comes with node package manager (npm), which is a great tool for the job. Still, be aware that you might be dealing with a lot of moving parts. Any tool that helps you with this should be worth checking out.

You should also check out modules like step or async, to make your chained callbacks look nicer. This way you will avoid long code pyramids.

Use a tool such as JSHint or similar, to detect errors and potential problems in JavaScript code. Try to integrate it with your editor or your complete development environment.

Regarding editors or an IDE, well, you basically have a standard pick here.

Although there is one interesting and somewhat new player you might want to check out - Cloud9 IDE, an online development environment for js and Node (amongst others). Since the code is available on github you can also deploy it on your own machines if the hosted options don't suit you.

Ygor··on Show HN: Wayback Letter - Looking back at 5+ years of Hacker News
This is great.

I was just searching old HN stories trying to find the very first story on node.js. I thought it would be fun to read all the comments again and see the reactions. Still haven't found the story on node.js, but this is in the same spirit.

Ygor··on A good developer has a natural, almost visceral aversion to complexity
In the paper No Silver Bullet [1], Brooks makes a distinction between accidental complexity and essential complexity. He claims that most complexity remaining in contemporary systems is essential.

Moseley and Marks disagree with his premise in the paper Out of the Tarpit [2]. They propose an approach based on functional and relation model to minimize accidental complexity.

Even if you don't agree with the conclusions or some of the premises in this papers, both provide an excellent read on the subject.

[1] http://www.cs.nott.ac.uk/~cah/G51ISS/Documents/NoSilverBulle...

[2] http://web.mac.com/ben_moseley/frp/paper-v1_01.pdf

Ygor··on Dropbox Can Now Automatically Sync Your Android Photos
Are there any good and relevant articles on dropbox architecture or implementation? Are they open about it, or is it more or less a secret?
Ygor··on Rediscovering the Rsync Algorithm
Do you know of any other implementations of the rsync algorithm other than the actual rsync program? And where are they used?

Do you know how and where dropbox uses rsync?

There have been some tries to port the rsync program to other languages/platforms [1], but they are usually not in sync with the current rsync program. I am talking about ports of the program, not new implementations of the algorithm.

[1] https://github.com/MatthewSteeples/rsync.net

Ygor··on Rediscovering the Rsync Algorithm
Has anybody looked through the code of the rsync program itself? Looks pretty intimidating. Would be nice to see a comment from somebody better versed in this style of programming.

http://ftp.samba.org/pub/rsync/

Ygor··on Game Development Essentials #1 - Don’t use inheritance for your game objects
Related, an interesting article: IS-A IS-A HAS-A

http://weblog.raganwald.com/2008/03/is-is-has.html

Ygor··on I want to fix programming
For those who haven't read it yet, this paper has a lot to say about the cause of programming complexity, Out of The Tarpit:

http://web.mac.com/ben_moseley/frp/paper-v1_01.pdf

They say that the only essential complexity is the one inherent to the problem the program is trying to solve. Everything else is just here because we haven't yet found the methodology or invented the tools to battle it.

They also describe an ideal world, where all the programming is done in way of declarative programming - what you want the code to do, and not how to do it.

Ygor··on How Trello is different
"we think it’s much easier to figure out how to extract a small amount of money out of a large number of users than to extract a large amount of money out of a small number of users. Once you have 100 million users, it’s easy to figure out which of those users are getting the most value out of the product you built"

Hm. This sounds logical, but is it really true?

Ygor··on Questions you have to answer correctly to get funding for your startup
The success of WhoAPI and the like is really helping the situation improve. There are a lot of great developers and motivated people here, a huge potential.

Congrats to WhoAPI.

Ygor··on Happy (?) 7 Billion Day
In a world with 7 billion people, even if you are one in a million, there are still 7 thousand people just like you.
Ygor··on Don't Call Yourself a Programmer
Paul Graham, Computer Programmer

http://en.wikipedia.org/wiki/Paul_Graham_%28computer_program...

Ygor··on Google's first retail store
I don't get it.

Why is Google so careful with opening more stores like this?

It seems pretty clear that such stores are extremely good at selling products to your average customer. Why not open dozens, even hundreds of them, all over the world?

Ygor··on "..best direction for evolving Java is to encourage a more functional style"
Yep, using the word simple to describe those languages is not really appropriate.

What I was getting at would be more in the lines of "confined to a single paradigm and style". And again, not saying either of the two mentioned are. It is more a question of future orientation and concept.

Ygor··on "..best direction for evolving Java is to encourage a more functional style"
Which of the two approaches would you consider better for the JVM and/or .NET as a platform:

1. Make the most popular languages, c# and Java, more complex by adding more features such as functional and dynamic support.

2. Make the "core" languages simple and precise, and encourage the use of other languages for adding more options and features to the platform.

Currently, for example, c# does support functional style programming, but there is also f# which ships with VS2010. At first, it seams as if the designers are not sure which of the two approaches to take. and just go both ways. Java is a little behind, but that's why we have clojure and scala.

Ygor··on Iron Man-Like Exoskeleton Nears Production
http://en.wikipedia.org/wiki/Dual-use_technology
Ygor··on Captchas To Keep Idiots Out Of Comment Threads
I am very good at failing standard captchas on many sites.

I always blamed Captchas as being to hard and not user friendly.

This title got me wondering - maybe it was by design, and I am an idiot.

Ygor··on Can the Dutch Get the World to Eat Bugs?
Depends on the definition of the term vegetarian. You can go with the "no meat, but fish and bugs allowed" definiton?

I wonder why do we, as humans, consider eating bugs strange, and why haven't they evolved as a regular part of the modern human diet? Is it only for historical reasons, social, or is it something physical or biological?

Ygor··on The pros and cons of developing a complete Javascript UI
I would argue that there are only two important questions when considering which of the two approaches to take: what are you building, and who you are building it for. Everything else falls behind. Points like "but than I will have to build two applications instead of one"... Common, It's just a matter of perspective. It doesn't really matter if you call it two applications or two modules or two battery staples, as long as it does what you imagined in the best possible way for the user.

If you are building an interactive web application that should be akin to classic desktop applications, you should really build a separate UI, just like if you were building a desktop application. If you are using a framework such as GWT, than it doesn't even have to "look" like two different applications from the developers point of view. Building a detached UI doesn't imply creating a nice public API at the same time.

On the other hand, if you are trying to create a content based site logically designed as linked pages of content, there really is no good reason to brake the classic web page layout and reinvent the wheel.

The problem, ofc, is what to do when your site is a hybrid between the two. Well, maybe a hybrid approach should apply also?

Most of the problems mentioned with the newer approach, js UI, are technical problems that must be solved (by us), not conceptual problems in the approach itself.

Ygor··on Why Minecraft Works (Design Concepts)
One of the best things about this type of games is the unexpected results you can get. And I am not talking about Easter eggs or different endgames some mainstream games boast themselves with. I am talking about really unexpected game situations (or even incidents).

As if you are building a giant simulation, where a very complex software system is interacting with unpredictable human players, and nobody, including the creators of the system, knows the limits of the simulation. This is the most interesting part of this type of games. This is why we get full working computers inside Minecraft, all sort of unpredictable scenarios in Dwarf Fortress, and also some really surprising glitches like the virtual epidemic that plagued the servers of WoW in 2005, almost like a real disease:

http://en.wikipedia.org/wiki/Corrupted_Blood

Ygor··on Vandalised home puts pressure on Airbnb
The question now is will this be the Hindenburg moment of this type of services, or is it just a speed bump?

We'll see how all this bad press is going to spread across the rest of the mainstream media and tabloids. I know we are all disappointed with the way airbnb handled the situation, but we really shouldn't be happy if all the sensation seeking press starts using this to boost their sales, and in the process damages this market beyond repair.

Ygor··on Show HN: whEnroute - a 3 week Haskell time-routing web app
Yep, it works now. Looks really good.

I wish all the best to everything made in Croatia.

Small remark: it is not clear what this is about from the front page alone. The about us link at the bottom does a good job explaining it, however. Maybe it should be somehow visible from the start to new visitors.

← PreviousPage 2 of 5Next →