HN user

lyudmil

522 karma

I'm building a platform to allow anyone to build interactive apps for web and mobile (still in alpha):

https://www.guidedtrack.com

Here are some random experiments: www.github.com/lyudmil

If you want to talk to me, feel free to get in touch:

lyudmil.i.angelov@gmail.com @lyudmilangelov

Posts17
Comments146
View on HN
bigthink.com 12y ago

An Interactive Course on Gauging the Strength of Evidence

lyudmil
1pts0
kitkat.com 12y ago

KitKat: A Closer Look

lyudmil
2pts1
bigthink.com 12y ago

Learn to Identify Rhetorical Fallacies

lyudmil
1pts0
momentjs.com 13y ago

From Web to Native: A Journey in Interface Design

lyudmil
1pts0
delivery.acm.org 14y ago

A Classic Paper: Computer Science as Empirical Inquiry: Symbols and Search [pdf]

lyudmil
1pts0
www.youtube.com 14y ago

Universe from Nothing by Lawrence Krauss [video]

lyudmil
2pts0
www.cepr.net 14y ago

Economic stimulus and arithmetic

lyudmil
1pts0
www.nytimes.com 14y ago

Krugman: Euro Zone Death Trip

lyudmil
2pts0
sites.google.com 14y ago

Reconstructing visual experiences from brain activity evoked by natural movies

lyudmil
4pts0
www.gizmag.com 14y ago

Researchers turn wastewater into “inexhaustible” source of hydrogen

lyudmil
2pts0
www.youtube.com 14y ago

Quants: The Alchemists of Wall Street [video]

lyudmil
2pts0
news.ycombinator.com 15y ago

Ask HN: Manipulating a client into making the right design decision

lyudmil
5pts6
www.guardian.co.uk 15y ago

The Naipaul test: Can you tell an author's gender based on their writing alone?

lyudmil
2pts0
www.youtube.com 15y ago

Paul Krugman on the Future World Economy [video]

lyudmil
2pts0
www.slate.com 15y ago

Fact-Check The Rhyme: Correcting errors in "The Anthology of Rap"

lyudmil
2pts0
lyudmil-shopska.blogspot.com 16y ago

The skewed incentives of academia hinder CS education

lyudmil
2pts0
video.google.com 16y ago

The Basics of Good Economics (with an admittedly liberal bias) [video]

lyudmil
1pts0

Ah, but that's the issue. As currently constructed, the espionage act cannot be challenged in court.

Assange would want to argue that he isn't a spy, but a whistleblower. The argument would be that he willingly broke a law in order to expose more illegal behavior by the government. In order to make that argument, he has to be allowed to talk about what the government does.

Under the espionage act, though, the government can say that the details of their activities are classified, and therefore are not admissable evidence in a public trial. Therefore, their guilt cannot be proven because any claim of illegal behavior could not be backed by evidence.

It's perfectly okay to use inequality as a personal motivator like you do, but it doesn't follow that inequality is a good thing. What you may find gives you drive might crush others, who would otherwise lead a fulfilling life in which they grow into their innate talents and enrich the life of the people they interact with.

I personally strongly disagree that one wouldn't try to improve one's life unless forced to by difficult circumstances. I think we have sufficient evidence that humans are innately curious and creative, and find self-fulfillment in pursuing their curiosity, discovering new things, and otherwise "improving."

It's actually fascinating to me that you have the view of human nature that you do. I don't think this is the right thread to discuss this, but in general I'm very eager to explore that further.

Would you still view inequality as efficiency if you were the one whose work is deemed less valuable? It's strikes me as a very easy statement to make when you can afford not to live like the people depicted.

Efficiency is about producing more of what you like, while keeping as much of the stuff you like that has already been produced. Whenever it's brought up like you have done, it's always an ideological point to some extent, because "what we like" is not well-defined. If I define inequality as a "bad," and capital as "not necessarily a good," then an exchange of inequality for capital is not efficient.

I agree with you completely and I think this cannot be controversial. If we cannot agree that sort(my_list) is better than its inlined function, our profession truly is at square one.

The interesting part of this is that although you kind of know that positions with as little nuance as Brian's have to be wrong (because the world isn't simple), it's still important to think about why you hold your own positions instead of dismissing any challenge to them outright. I think it's good to think about why we use objects and whether we need to do it as much.

What we especially lack in programming is any evidence for our practices. The best we currently have is opinion and experience. That means a lot, but not as much as empirical evidence, and I think we tend to forget that too often.

This is a stimulating argument to think about.

One possible counter-argument is that the resulting procedural code is more difficult to unit test. In the video Brian acknowledges that he doesn't think much about cyclomatic complexity, but I think if you were to try to test one of these long functions with a lot of branches, the setup required for each case you want to test would dominate the amount of code devoted to the actual test. The solution to this isn't necessarily OOP, but I would not want to maintain Brian's code as it stands without refactoring it.

The more fundamental problem to me is that Brian's code requires you to read it fully in order to understand it. No part of the code is difficult to understand, but it demands that I understand it in detail before I can have a summary of it in my head. I prefer for code to read more like a newspaper article, where the further down you read, the more detail you're given, but you can stop at any point and have a decent understanding of what's going on. To me this makes it easier to reason about the system as a collection of sub-systems, which is often the level at which the really important decisions are made. Again, OOP isn't the only "solution" for this, but I think it's a good tool. It does have the potential, as Brian points out in one of his earlier videos, of devolving into philosophical exercises, but I don't think that's necessarily a drawback if your goal is to make it easier for humans to comprehend your system. In designing your system this way, you're simply taking advantage of people's natural ability to think in abstractions.

No, but in societies with more freedom like the US and the UK there generally tends to be more propaganda, because in those societies the government can't use force to coerce the population. They need people to agree with the official line, so they have to use the media to print stories like the Sunday Times'.

In general I think there is a case to be made for "slow" programming, but this article falls short for me. I happen to think that software development is a knowable discipline, that we're in the process of figuring out how to build the kinds of systems we need and struggling with a new kind of engineering where there are no physical constraints.

Therefore, I think we have a lot of exploring to do in order to come up with practices that reliably lead to better software and certainly the speed of the development process and the number of iterations is an important thing to experiment with.

However, the post is too wishy-washy to teach anything meaningful. What does "dot my i's and cross my t's" mean in the context of software development? What does "something like implementation-ready code" mean and why is it useful? How do I, as a person separate from the OP, get from where I am today as a developer to the super effective zen-master you're telling me I could be? I'd love to read that post, because the one I just read makes it seem like I should wait to get older and take up gardening.

I don't pretend to know the answer to this, but I can share when I've been tempted to do such things in Java.

You know how fairly often when writing OO code you want to have an object that takes a bunch of optional inputs in its constructor? That's trivial in Ruby because you can just stick those in a hash, merge the defaults with that hash and you have your options. In Java that won't work because you don't have syntactic sugar for default arguments and the syntax for creating maps is... complex. So you naturally think you need one place to handle all of the complexity of constructing the object and then you think of the factory pattern and you apply it.

Imagine, though, that some of the objects you use in order to construct the object you now have a factory for also become similarly difficult to construct. You don't want your existing factory to know about the complexity of how to construct those, so one idea would naturally be to offload their construction to something else, which passes them into your original factory. It's not a huge leap to then figure out you can put this in another factory and now you have a factory of factories. Repeat.

I'm sure there are other reasons why, but for me that's the most common one. When I used to write a lot of Java, I used to often have to resist the temptation to do that.

I hope what I wrote makes at least a little bit of sense...

Why I Don't Drink 12 years ago

I think the OP saw a lack of nuance in the argument and explaining was speculating about where that comes from. I don't think anyone suggested that the European way is better. In fact, your reading of the OP's argument is very "American" because you talk about "European" as if it's a thing. Drinking culture in Southern Europe is very different from drinking culture in Central Europe. Eastern Europe is another thing altogether. Hell, even the way Spaniards drink is vastly different from the way Italians do. Also, in general Europeans get really drunk occasionally, just like you do, so even if there was a "European" way of drinking it would include your behavior.

Basically, I think you're reading into it too much. I don't think the OP implied what you think he or she did.

> I have noticed that, as I get older, I need to hydrate more and more to avoid a headache afterward. Annoying.

Drinking water only helps relieve one of the causes of a hangover (dehydration). There are many many others, so it may not be the amount of water you need to change, but your choice of drinks (clear, distilled beverages generally contain less congeners, which are one of the main causes of hangovers).

Why would comparing those two scores make any sense? The US has a good education system if you compare it to the world average. It's no surprise that people in that system would do better than wherever their ancestors are from because the US is virtually guaranteed to outperform a randomly chosen place in the world.

This is a double standard. To have its “great” hardware support, a given release of OS X has to support a few dozen hardware configurations.

Agreed. Linux and Windows, as operating systems, are solving a much different and more difficult problem than OS X is. You can get them to run on a wide variety of hardware relatively easily. By that metric, both Windows and Linux have "better hardware support" than OS X.

The problem is this metric is completely useless to me. When I turn on my machine, I do it in order to get work done. This means I need to be able to go online for project management and responding to emails, I need to be able to call my clients using their preferred VoIP service, I need to run text editors, IDEs, and various virtual machines, interpreters, compilers, and servers, I need to be able to hook into an iPhone or Android phone and load software onto it, I need to be able to quickly and painlessly install libraries, software, and developer tools, I need to be able to edit video and audio, and I need to have the confidence that if I had to learn a new skill or assumed a new responsibility, I'll spend most of my time learning rather than setting my system up.

I care about my system's hardware support as far as it allows me to do these things quickly and painlessly. I've had Linux and Windows machines before and I've done all I've needed to do on them, but I've never accomplished my work as effortlessly as on a Mac. I think that's what geeks mean when they say "better hardware support". They mean "fewer unforeseen setup-related problems". That's a metric I care deeply about.

The PyCon Incident 13 years ago

Everyone's natural tendency in situations such as this (ones where valid moral principles are in conflict) is to try to look for the easy solution. We want to determine who's right and who's wrong by determining which should take precedence - one's right to privately hold and express (even unwelcome) views, or one's reasonable expectation not to be bombarded with offensive language in a setting where they cannot get away from it. In order to resolve this conflict we try to order, add, and/or refine rules, hoping that we can make a clear distinction between right and wrong that will be accepted by a near consensus. This is an empty exercise and denies the nature of complex matters.

Clearly, the men involved (unknowingly) imposed speech that was deeply offensive and uncomfortable for Adria in a situation where she couldn't get away. She reacted, which she has the right to do, and as a consequence one of the men is paying a price that is obviously too steep. It is clear that the pain caused by Adria's tweet isn't proportional to the harm the initial language caused, so what could have been constructive criticism has spun out of control. So, it's unfair to Adria that she had to hear language she found offensive, but it's also unfair that anyone got fired over a comment that most of us would agree wasn't intended to offend and could've been rectified with a simple apology.

We should acknowledge that no heuristic we can come up with will tell us how to behave in the future in order to avoid this sort of thing. As a person who, embarrassingly, finds toilet humor frequently hilarious and fully supports free speech, I don't see nor want to see it go away. As a rational person I also acknowledge this sort of thing has the potential to offend.

What we should realize is that, if we expect to progress in such matters, we have to let go of the notion that punishment is the tool to move us forward, and engage in conversation instead. The fact that our impulse is so frequently to oversimplify behavior by labeling it "right" or "wrong", seeking to penalize the "wrong" should trouble us. It denies both parties (both the offender and the offended) the opportunity to exhibit empathy, compassion, remorse, and forgiveness, which are at the base of anyone's morality. Thus, the blindness to the complexity of moral dilemmas, and our aversion to the necessary discussions deprive us of our humanity.

I'm not a person whose opinion on the subject matter should matter to anyone, so I'm not commenting because of a vested interest in this argument. I'm commenting because I think you're misapplying the principles of the scientific method, which makes your criticism unfair.

> You place a burden of evidence on him...

It isn't saidajigumi placing the burden of proof on him, it's the scientific method. Everything we know about nutrition tells us that we don't understand it enough to pull something like this off. It would be a breakthrough if it turned out we can, but the null hypothesis is that it won't work, so that's what our position should be.

If our default position is that this doesn't work, and the guy is really relying on his mix for most of his sustenance, that means we think he's going to experience adverse health effects because of his diet. Perhaps we have no evidence to suggest they'll be adverse enough to qualify his diet as "poisonous", but the assumption isn't completely baseless, as you've asserted.

Again, I have no idea who's right and who's wrong, but the two claims are certainly not equally likely.

I agree the situations aren't identical, but what theory do you think best explains all the observations?

Just to be clear, my answer is: Each country's problems are rooted in the collapse of the US housing market and the resulting financial crunch. The country-to-country variations are there and they're significant, but secondary.

That is part of it, but I think there's another piece to the puzzle.

The private sector in general is in crisis because the banks won't lend. They won't do that because of the problems on their financial sheets - they know they hold toxic assets and they know everyone else does, so they cannot trust anyone to pay off their debt, including other banks. This means that private investment has decreased severely, which puts enormous downward pressure on the economy.

Since the private sector won't invest, the only source of investment big enough to fill the hole (which might be as big as $8 trillion), is government. Austerity is a problem because it limits the governments ability to invest, which means that you have a shrinking economy trying to make up ground, which is a losing battle, especially for the poor as you point out, since they do not have the assets to absorb the economic hit.

I should say none of this is my opinion, I'm merely summarizing Krugman, Stiglitz, and Baker, who are the three economists whose work I've followed on the matter.

That's a hypothesis, but it seems unlikely since there are four other European economies facing identical problems - Spain, Italy, Portugal, and Ireland. Spain in particular was a very reasonably managed economy before the crash, running surpluses and growing. So, your hypothesis would require that you attribute the problem in each of these economies to separate causes, which is probably wrong.

This is not to say that there wasn't gross economic mismanagement on the part of the Greek government, but focusing on that distracts from the real solution.

UPDATE: I'm in complete agreement with everyone pointing out that the problems aren't identical. Perhaps the question is whether, if you were to summarize the causes Euro crisis in broad terms, you ought to mention Greece's economic mismanagement first or the overall crash of the financial markets as the more important factor. My assertion is the latter, mostly echoing Stglitz's analysis here:

[1] http://www.youtube.com/watch?v=GdP-Fab8JX8

[2] http://www.youtube.com/watch?v=4Ezn8Sgzxd8

Completely agree. If Paul Krugman isn't enough to sway people, Joseph Stiglitz, another Nobel laureate, has echoed his analysis. So has Dean Baker, who is the first economist to my knowledge to predict the housing bubble and the resulting crisis. Basically, this was easy to see and well-known to economists that aren't neo-liberal demagogs.

There's obviously little point in continuing this further. I originally wanted to point out that you were making some bold assertions. I also admitted ignorance, but I pointed you to Michael Albert's work, who both theorizes about and follows experiments in self-managing workplaces, where you'll be able to read that what you've pointed out is a valid concern and how they propose you get around it. Also, if you read it carefully, you'll also see some other small inaccuracies in your summary of Nobel's argument.

I didn't think I was being flippant or rude and I'm sorry that I've come across that way. If I did have knowledge or an informed opinion about this, I would've shared it. If I could've stated my opinion better, I would've. I shared what I knew. However, you also have a certain responsibility, if you want to be taken seriously, to study at least partially the material you criticize.

Regarding your first point, Chomsky does agree with it, but you said "his analysis." I was pointing out that it isn't his analysis and also wanted to stress that he's referring to a much larger volume of work (a book), rather than making an off-the-cuff remark, so there would be a lot of material for you to study if you wanted to critique the analysis. It's usually unwise to do so only having read a summary.

With regard to your second point, you merely asserted that the plausibility of worker self-management is influenced by cultural variables. Here again I was implying that you ought to refrain from speculation before having studied the matter thoroughly, as I know there are a lot of other factors to consider. It is possible that your intuition is correct, but very unlikely unless it's informed by all the prior work on the subject.

Basically, on both counts I'm advocating humility and avoidance of speculation, which are principles that apply to almost all statements by everybody. I'm not interested in arguing for or against your points because I don't have the knowledge to do so in a reasonable way. My problem is that in your comment you betrayed evidence that neither do you, so I wanted to put a word of caution in there.

First, it's important to note that this isn't Prof. Chomsky's analysis. You are actually quoting Chomsky quoting David Noble.

Going a bit further, the concern you raise regarding the plausibility of worker self-management is absolutely a valid one. There are a number of people doing work on the matter. I'm familiar with only a fraction of it, but enough to assure you that the problem is quite nuanced and more involved than you could intuit. There are at least hypotheses about what causes the problems you gesture to and there are proposed solutions. If you're interested, I can point you to Michael Albert's work on the subject.

I was disappointed that the article didn't do a better job of separating opinion from evidence. The introduction seemed to imply that a usability test had taken place, but the results were never used to back up any of the article's criticisms.

That being the case, I have to assume that this is opinion. So, the author and the people he spoke to didn't like Windows 8 for what seem to be logical reasons. Okay, but not as illuminating as actual evidence that there are usability problems.

If you truly believe the market is the best way to sort it out, why not let the government compete? Have a single-payer system and let people opt-in. Also, repeal the laws that currently prohibit the government from negotiating drug prices. In a free market, if I'm a major client, I have some leverage to get preferential rates. Then, I'd be all for the market sorting it out. Would you support something like that? My guess is not, which means you aren't really arguing for deregulation, but for a different kind of regulation.

NOTE: This is meant as a reply to guylhem's response below.

It is true that the percentage of GDP the US is spending and will be spending in the future is not sustainable, but you're making an argument for universal healthcare. The reason costs are skyrocketing is that you have a privatized system that's (oddly) subsidized by the government. Patent laws give pharmaceutical companies monopolies on different types of drugs, while on the other hand the government is forbidden to negotiate with those companies on the price.

You also have huge overhead (31%) due to the inherent inefficiencies of running this kind of system through the private sector. For example, you need at least two doctors for each transaction - one to diagnose you and prescribe treatment and one working for the insurance company making sure that you actually need that treatment.

As for the argument about demand reduction, I agree that if you had much more demand, even reduced costs may make it unsustainable. However, in the real world that is demonstrably not happening. It simply isn't the case that universal healthcare is more expensive if we consider the evidence.

I disagree strongly with pretty much all of your points.

You acknowledge that the vast majority of the evidence points towards universal healthcare systems being more economically efficient in your first sentence. You then proceed to make an argument that basically asserts the US is a special case and that a universal care system wouldn't "behave" as it does everywhere else and reduce costs, but instead increase them. I see no basis for this assumption and I want to challenge you to demonstrate why you should be granted it.

I also want to challenge you on your implied definition of "useful" or "efficient". You say you would favor a universal system if you were to see convincing evidence that it would reduce costs. In your argument, I at least, read an implicit assumption that cost ought to be the deciding factor. I find that point of view detestable. For corporations, whose sole purpose is profits, it makes sense to think of efficiency that way. You and I, however, are people, and shouldn't have values that put resource acquisition higher than human well-being. You're free to disagree, but doing so would convince me that we have very little common basis for dialog.

In the last part of your comment you give France as an example of a country that will suffer dire economic repercussions for having run an unsustainable universal healthcare system. I haven't double-checked your references, but I'm happy to grant you, for the sake of argument, that the data is on your side. You've chosen to ignore the vast majority of strong economies with universal healthcare. You've also failed to mention that whatever problems France may have in the future, they pale in comparison to the budgetary problems the US is facing due to the privatized healthcare system it is currently running. References forthcoming should you ask...

This is good general programming advice beyond game development. If you think you need inheritance, you probably will be better off using composition because the general "is-a" rule of thumb is, in my opinion, a bad way to figure out if inheritance is required.

More in this old thread: http://news.ycombinator.com/item?id=1992745

In short, use composition and if inheritance is what you want instead, it will become obvious soon enough.

I learned and fell in love with Rails because I was stuck working with Struts and I saw how much easier and better life could be. So, at least for me, the decision to use a different framework didn't follow what you describe. I'm pretty sure if I came across something that allowed me to solve my problem in an easier and better way than Rails would, I'd use that instead.

For example, if I were building a mobile API that I was fairly sure wouldn't require a web interface later on, I'd consider using something simpler and more performant than Rails. It's not a matter of being an early adopter vs. a conservative developer, it's a question of practicality. As it always should be.

The evil unit test. 14 years ago

Usually the problem you'll get if you use a lot of functional/integration testing is that your test suite will run too slowly for you to run it often enough to validate your design. It ends up being something you run when you think you've completed a feature to make sure it works, but not after you've extracted a class to make your code cleaner.

I have also had times when I moved away from unit testing in favor of higher-level tests, but ultimately found that the quality of the code got worse and the build time became unacceptable. I'm not trying to generalize here, I'm only talking about my code on a particular project at a particular point in time.

I think as software developers we are collectively ignorant about the estimation accuracy possible in other engineering disciplines. Every time we talk about estimating software we point out it isn't analogous to building a bridge or a car and we try to reason about why that is.

Both of my parents are engineers in several different areas (road, civil, and HVAC engineering). Through talking to them I realized that their projects and estimates are always off and by similar margins as the softare projects I've been involved in.

I'm not sure why that is, but people just seem to generally suck at estimating engineering activities. With software I think the problem is more pronounced because the engineering phase so dominates the cost of construction. If designing a bridge takes longer and costs more than what you expected it really isn't such a big deal because actually building it is much more costly and delay-prone. The people financing the project won't have a hard time absorbing the cost associated with incorrect engineering estimates. Quite clearly the situation when it comes to software is different.