HNHacker News
TopNewBestAskShowJobs

PieSquared

2,468 karma · joined March 2, 2008

My blog and website is at www.gibiansky.com. You can contact me via andrew dot gibiansky at Gmail.
submissionscomments
PieSquared··on Your Very First Microprocessor
Thanks! Nice to know. I must've picked the habit up before from just reading code on the internet (as per my other comment in this thread), but I'll try to phase this out. This is what I love about Hacker News - people commenting really know their stuff, almost always well enough to teach me something :)
PieSquared··on Your Very First Microprocessor
For future reference (since I can't edit): I spent a while researching and couldn't find any definitive answer, but found some places which supported the implicit assignment ([0], [1]). However, these aren't anything official, so I think ultimately it just depends on what your particular implementation supports...

[0] http://www.verilogtutorial.info/chapter_2.htm [1] http://www.doulos.com/knowhow/verilog_designers_guide/wire_a...

PieSquared··on Your Very First Microprocessor
Hey Mike! Cool to see circuitlab developer(s?) on HN! It's an awesome tool.

When writing these blog posts, I usually create a single circuit with a bunch of disparate parts - I don't need the circuit to be functional for any simulation purposes, I just need the diagrams and rendering. Part of the reason that I only use a single circuit is that I need to copy and paste different parts, and I'm not sure if copying/pasting between different circuits is possible. Also, copy/paste rather often dies on me, especially when selecting multiple components, which makes workflow a bit more complicated. (This happens to me rather often and is really annoying, because the only way to fix it is to close the tab and restart. Symptoms after breakage include inability to copy/paste or move any circuit elements around. If there's any way to submit debug logs for when this happens, feel free to let me know and I'll be sure to try next time it happens. You have my email.)

Exporting via the export tool produces a single PNG file for the entire circuit, where I often need just a bit of the entire diagram. Screenshots let me select a small portion of the circuit.

I'm not entirely sure how this could be fixed. If there were gist-like embeddable widgets, I think the convenience of those would outweigh the disadvantages of a slightly different workflow. Circuit "gists" would be awesome. Another thing that would be great is if I could select a bunch of elements on a circuit, click on some button, and have a new circuit created with only those elements in it. (Note that I'm just brainstorming what would help me specifically, so I don't know how all this might fit into your product.)

Anyway, CircuitLab is awesome! Thanks for making it.

PieSquared··on Your Very First Microprocessor
Could this be dependent on the Verilog version? At the very least, the wire assignments without the 'assign' keyword seem to work in the iverilog simulator as well as Altera's Quartus suite synthesis tools. I have seen both conventions (wire declaration and assignment separately or together), but I believe the assign keyword is only required for the former.
PieSquared··on 2012 Corruption Perceptions Index
It helps to have some context. Being moderately aware of global politics, I know that Russia is considerably more corrupt than the United States. Russia is reddish; the USA is yellow-ish. The rest I can figure out, and the numbers and labels make it all a bit more quantitative.

To be fair, the infographic could be better, but I think all the information is there and relatively easy to parse, so calling it "not very informative" is a bit extreme.

PieSquared··on Everything is my fault
I think interpreting these posts in the literal manner that you and the grandparent are doing is a bit misleading. If you read what the OP wrote in the most literal manner, he sounds like a nutjob. You're right - there's no way to say that it's his fault that everything happens. What if a stranger had a bad day for his own reasons, and decided to use that as an excuse to be rude to the OP? Or someone broke into his house and stole something? There's plenty of scenarios where logically it cannot be his fault that something happened. ("Global warming! It's all my fault!")

But that's not what he means, and not really what he's writing about. The way I read this, he's proposing a shift in world view. People are difficult and unpredictable creatures, but, if I were smart enough, I would understand how they work. I could have been smart enough or empathetic enough to realize this stranger had a bad day, and say something nice to him to cheer him up. I could have been smart enough to get a better security system for my house. If I really cared about global warming, I could try to become a U.S. senator (or some other powerful politician) and try to change it.

By saying, "It's my fault", what the OP means is, "If I really cared about this, and was smart/strong/etc enough, I could have worked to fix/prevent this". This isn't about "[controlling] the entire world". It's about believing that you have control over your life, and about realizing that blaming others (whether in an angry or forgiving sense) is entirely useless in terms of practicality. If you blame others for anything, you're saying that there's nothing you could've done, and letting others determine your life.

I understand that in some regards, this is a bit silly. It's not my fault that someone had a bad day, and it's not my fault that I don't know them well enough to make them feel better. It's not my fault they were rude to me. But I'd rather pretend it's my fault and think about ways that I could handle the situation better in the future than just blame it on external forces and allow myself to repeat the same mistakes.

PieSquared··on On Heroku and 2012
This advice comes up very often when people write about re-evaluating their lives. (Also, this retort comes up very often when people read what those people wrote. I don't disagree with your logic, per se...)

I think you're right, but the author probably did not mean the advice as literally as you're reading it. You're interpreting the advice as a call for egoism [0]; selfishness to the point of being unwise. I think that when people write this, they're actually writing a call for hedonism[1].

Hedonism is different from egoism. Hedonism, the way I see it, is realizing that our existence is ultimately meaningless, and that we should optimize for our own happiness (and well-being) rather than any other metric; all metrics are meaningless, so we might as well stick to what makes us happy. In actionable terms, embracing hedonism means realizing that you should aim towards doing things that make you happy, and that this aim should be your guiding force (at every "single moment in life"). This doesn't mean that you should be happy every single moment; it means you should be optimizing for happiness every single moment. (To use your examples: a spouse knows that compromising will make them happier overall; a janitor knows that although his/her life aren't perfect, doing this is what will lead to his/her life improving (hopefully) or at least keeping them happier.)

Anyway, that's the way I understand this type of advice, and I appreciate the occasional reminders. (Also, I don't actually know much about philosophy, so I might be misusing terminology here; if so, please correct me!)

[0] http://en.wikipedia.org/wiki/Ethical_egoism (maybe?)

[1] http://en.wikipedia.org/wiki/Hedonism

PieSquared··on Ask HN: Do coding coaches exist?
I've talked to some of the guys at Tutonic.com, and seems like they might be trying to do something similar. I can't tell if they're getting anywhere or have any users, though.
PieSquared··on Mathematica 9 Is Released Today
Wow. I am impressed not only by the new features, but also by that blog post. That was some really effective marketing!

I'm particularly pleased by the addition of units. I can't count the number of times I've done some symbolic work in Mathematica, copied the results, pasted them into WolframAlpha, added numeric values and units, and then computed the value there. It's become a common refrain in my workflow and a rather annoying one at that, so I'm really glad they're integrating things from WA into real Mathematica.

PieSquared··on The Next Step for GNOME 3: Content applications
I'm not sure what you're saying is true. I, personally, am a huge fan of GNOME 3 and everything the project has done and plans on doing. Most of my friends (Linux users) are also satisfied, and have no major problems with it. But we usually don't talk about it on Hacker News or other message boards, because we're happy with what we have.

People who are unhappy are much more likely to speak out than those who are content. Clearly, GNOME 3 has annoyed a lot of people, judging by how many people are angry. But I think that generalizing and saying there's "near universal hatred for everything about GNOME 3" is a bit unfair.

PieSquared··on Show HN: Algorithmic Music Generation - Computoser
Whoa, cool! How are you doing this?
PieSquared··on Ask HN: Any students aboard?
To me, this looks like a really cool tech demo without a clear purpose. I can think of several possibilities: For instance, teachers using this as a way to distribute examples for people to play with, as an improvement over paper hand-outs. Or as a tool for remote tutoring, as in the collaborative drawing example. Or as a tool to organize study notes.

But I think it would help if you choose a single use case and focused. If this is a tool for remote tutoring, try to integrate it with other similar services. For example, a built-in code editor. (There was a really cool online tool I saw a while ago that let you step through python code line by line, showing the currently defined variables and values at each step, with arrows and such pointing to objects on the heap...).

Basically: the technology looks really cool, but it's hard to say anything else. I'm not sure who this is aimed at.

PieSquared··on Extremist Programming
The point you make is really valuable. A few days ago, I found myself explaining to someone why custom hardware and GPUs could so easily outperform processors, and I realized that most programmers have no concept of how much overhead the general nature of a processor entails. (Although, I don't think most programmers really need to know this.)

For instance, let's take the problem of multiplying ten numbers. In a normal processor, you have a loop of instructions, each instruction has to go through a "fetch" state (to load it from memory), a "decode" stage, to figure out what the instruction is, an "issue" stage, to figure out which processor pipeline can best execute this instruction, an "execute" stage, to finally execute the instruction, and maybe a "commit" stage to write the outputs back to memory. (The exact number of stages and amount of parallelism depends on the microarchitecture and pipeline depth, of course). What if we wanted to just build a chip that did this? We could put ten multipliers on the chip, and then do the exact same operations in just a few clock cycles, since we would have no instruction fetch or decode, no commit, no loops, and so on. This is a contrived example, but my point is that general-purpose processors are incredibly slow compared to dedicated hardware, precisely because the extra transistors necessary to make processors general purpose also take a large portion of the computing time.

I find the idea of FPGAs reconfigured per-application to be really interesting. Celoxica (http://www.celoxica.com) seems to do some sort of FPGA-based software acceleration for trading software, for instance. I wonder if it's possible to do something like this for a more general market...

PieSquared··on GNOME to release official "classic mode" extensions
Just to be clear, I certainly wasn't criticising those who use fallback mode, or trying to imply "they" (you) were all just whining for no reason.

I think they still have a lot of work to do. When I upgraded from 3.4 to 3.6, I was pretty annoyed because out of the eight or so extensions that I used, all but one stopped working. Luckily, the extensions that I used were all upgraded within several weeks, but it's still a major issue.

I think it's pretty clear from the extensions site that this is still a work in progress. That's part of the reason I really like this announcement, though - exactly as you've said, it looks like they're going down the path of "official set of well-maintained extensions", which I think is the right choice.

I guess that GNOME 3 isn't entirely ready for everyone yet, but the future that I see for it is pretty awesome. For me, personally, it already far surpasses GNOME 2, and I think it still has a lot of potential that it hasn't utilized.

(I can't really comment on multiple monitor setups, though. I just have a laptop.)

PieSquared··on Extremist Programming
To expand on your suggestion a little, I would suggest going even further - learn how to design your own processors and figure out how the low-level details really work. With hardware description languages such as Verilog, programmers can apply a lot of their knowledge to hardware engineering. I've found that a lot of things carry over from conventional programming languages to HDLs, and that it's incredibly easy to get started. The computer engineering mindset is pretty similar to low-level programming, and really helps you understand how your code runs, even more so than assembly.
PieSquared··on GNOME to release official "classic mode" extensions
As much as people enjoy ragging on GNOME 3, I think the developers have been doing a great job, and that this is a smart move that will allow them to move forward while satisfying those that prefer the current fallback mode.

I am a huge fan of their extension mechanism, and use a bunch of them. It seems like the mechanism is extremely flexible, as people use it for things from creating quasi-tiling window managers (see shellshape or gtile) to customizing the search dialog (like Unity's lenses) to just adding various buttons in different parts of the UI. All in all, I am a huge fan of GNOME 3, but I really do wish the extension mechanism were a bit more well-documented...

PieSquared··on How tiny wasps cope with being smaller than amoebas
As I understood it, both the Paramecium and the amoeba have a single cell. The wasp has many. (I had to reread that a half-dozen times to figure that out...)

Original: "It’s pictured next to a Paramecium and an amoeba at the same scale. Even though both these creatures are made up of a single cell, the wasp..."

PieSquared··on What happens when you ask people to pick the lowest unique prime number.
A number theory class I once took provided us with the following "proof", claiming, in fact, that it was the most useful thing we would learn, and would make a great party trick.

Theorem: Anything less than 91 which looks prime is prime.

Proof: To do this, we will calculate the smallest number that looks prime but isn't. The numbers 2, 3, 4, 5, and 6 all have easy and quick divisibility rules, so our number cannot be divisible by any of them. 7, however, is hard to check for - so clearly the first number that looks prime but isn't will be divisible by 7. Sadly, everyone realizes 49 isn't prime, because it's a square, so we need to find the next difficult prime factor. 8, 9, 10, 11, and 12 are all also subject to quick tests and divisibility rules, so discount those. 13, however, is ugly - thus, the first number that looks prime but isn't is 7 times 13, which equals 91. Q.E.D. (My professor insisted this stood for "Quite Easily Done".)

PieSquared··on Show HN: Wrote a tilt-based Android game - testing and comments appreciated
Hey guys! This is the developer here. I've been trying to figure out how to write Android games lately and this is the result - I've tried to make this as professional as more experienced developers and hope you guys like the result. I'm submitting this to HN because I'd love some feedback and because honestly, much of what I've learned about programming and software development over the past few years has been from this community.

I'd love feedback and comments. This is the second time I'm working on this game, and the first time I've released this to the Android store. People seem to like it so far, but suggestions would be great! Use the promo code 'HackerNews' if you'd like to upgrade to the full version for free - I'm really more interested in feedback than money from you guys.

Thanks!

PieSquared··on With EveryArt (YC W12) you don't have to be afraid of commissioning art
Two more comments: I was about to email you about it when I noticed you actually have something about gift cards on your website. Make it more prominent! I think gifts would be really awesome here, but you make it so hard to find :)

Also, it'd be nice if you could somehow give an example of artists' price ranges. I don't know if I'll be paying $15, $50, $500, or $1000, and especially for someone new to art commissions, this could be a point of serious confusion.

Either way, awesome idea. I really hope this takes off. Consider me a hopeful future customer!

PieSquared··on Ask HN: Freelancer? Seeking freelancer? (March 2012)
SEEKING WORK - REMOTE mostly, possibly Ann Arbor, MI or Boston in the near future.

Looking for part-time remote work. Generally experienced with Java, Python, C; have done mostly backend work with some iOS and Android development. Big fan of interesting algorithms (image processing, computer vision, statistics, simulation, you name it) in any language. Also happy with more 'esoteric' languages (OCaml? Lisp(s)? Matlab?). Also experienced with Linux system administration/networking (Fedora, Ubuntu, Arch) and perfectly comfortable in a command-line environment (zsh! ..or bash, I guess ;).

PieSquared··on Handwriting to LaTeX maths
Hey! I've been daydreaming of making this application for years now. It would be the killer application for tablets (for me, anyways).

I'm an Android developer, so if there's any way I can help out, or if there's any way I can make it happen faster, please let me know! (email in user profile. I'm really really hoping I can help out somehow.)

PieSquared··on How to invite people to Google+
Niftyion at gmail would much appreciate an invite too! Thanks!
PieSquared··on The 10:10 code - global position in ten characters
I completely agree, but was mystified by this statement...

*Please, suggesting something like this and encouraging people to implement it is like coming out with a device that only charges over micro-USB. Just... don't."

What's wrong with micro-USB? I look for it whenever I buy a new device, just 'cause all new phones, cameras, etc. use it (and only it) for charging. It's a nice standard. No?

PieSquared··on Ask HN: Advice for a young, self-taught programmer
Hey, I read your comment and wanted some more info, so I started a separate thread (since the questions I had weren't entirely pertinent to this one): http://hackerne.ws/item?id=2647750

Thanks in advance!

PieSquared··on Ask HN: Freelancer? Seeking freelancers? (May 2011)
SEEKING WORK

Student looking for part-time remote work. Will probably charge less than most.

Well versed in Linux networking (specifically Ubuntu Server administration), Python, C, and Java. Have done significant amount of work with PHP, iOS/Obj-C, OCaml, Common Lisp, and x86 assembly. Pretty good background in math and computer science, some background in physics/electrical engineering/biology.

Would love to work on anything interesting, though preferably not mobile applications!

PieSquared··on Ask HN: Freelancer? Seeking freelancers? (April 2011)
SEEKING WORK

Student looking for part-time remote work. Will probably charge less than most.

Well versed in Linux networking (specifically Ubuntu Server administration), Python, C, and Java. Have done significant amount of work with PHP, iOS/Obj-C, OCaml, Common Lisp, and x86 assembly. Pretty good background in math and computer science, some background in physics/electrical engineering/biology.

Would love to work on anything interesting!

PieSquared··on Ask HN: What martial arts do you practice? What do you recommend?
I logged in just to post this. Try Capoeira. It's not as well known as many other martial arts, but it's a lot of fun.

It's a Brazilian martial art which originated with the black slaves transported from Africa. In the 1800's, around 1880 or so, slavery was abolished, and due to massive former slave unemployment and gang activity, capoeira grew steadily more violent. It was soon outlawed, and any found practicing it were jailed. However, around 1930, a movement grew to found capoeira as a "modern" martial art, with a formalized training and graduation system, as opposed to a very advanced form of street fighting. Since then, it's been getting less violent and more popular throughout the world.

It's very different from the other martial arts. The closest Asian martial art would be Wushu; capoeira is equally "showy" at times, utilizing flips, jump kicks, and so on and so forth. A lot of the movements you see in breakdancing actually originated in capoeira. Headspins, 1990's, butterfly kicks, backflips, the "baby freeze" are all movements in breakdancing, but also find their place in capoeira.

Capoeira is played to music and singing on the traditional instruments. A berimbau, drums, and a pandeiro (tambourine). The speed of the game (the fight) is set by the music. Finally, capoeira is a game of strategy: it requires quick thinking, because every movement by your opponent can be countered and used to gain the advantage. At higher levels, the fight becomes a mental one - you must anticipate what your opponent will do before he does it, and, at higher levels still, you can lead your opponent to do what you want him to do, so that you know in advance what will happen.

It's a very dynamic martial art. It's beautiful and incredibly fun, as well as incredibly tiring. It really does a wonderful job of combining "martial" aspects with "art" aspects: some styles of play emphasize fighting and defense, while some emphasize beauty. Some do both.

Here are some links to videos of capoeira games: http://www.youtube.com/watch?v=Z8xxgFpK-NM http://www.youtube.com/watch?v=51q1VB_dDik http://www.youtube.com/watch?v=FQl3iInVd0Y

Feel free to email me for questions. My username at gmail. There are multiple groups; I would suggest joining Abadá capoeira if you have them near you, as that is the largest and most organized group, from what I've heard.

PieSquared··on Emacs gets Google Maps support.
Aye. I've used both Vim and Emacs (Emacs less so, but it was my main editor for a few months, so I feel comfortable if not proficient with it), and once I realized neither was what I wanted, I switched to Viper mode.

But, somehow, I never really adjusted to it and now switch between Vim and when necessary Xcode.

PieSquared··on Emacs gets Google Maps support.
Each time I see a post about Emacs, I get jealous because I prefer Vi's text editing.

If only there existed a good modal editor with a good scripting language behind it...

I keep hoping that Yi (http://www.haskell.org/haskellwiki/Yi) goes somewhere, but it doesn't seem too active.

← PreviousPage 4 of 19Next →