And love the fact that stuff like this makes the front page of HNews. I'm here for the tech discussions, but love to come across things like this. Exactly why HNews is the first webpage I visit in the morning.
- great name
- windfall to charity
Sounds a little gimmickly, but so what? Finding a way to be noticed enough to get traction is mandatory. Good job.
- Corporations get tax deductions for donations to nonprofits too, so this won't cost the full 150k. And this will get far more than 15k signups, since people will keep signing up because of this splash long after the 150k is gone. So really, profit = (@$20/month "revenue", 5% on top of credit card fees) $1/customer/month. Real cost/user will likely be less than $5, so if LTV/user is $5 or more, this is worth it on the $$ alone.
- Donorschoose.org, one of the web-savviest nonprofits around, gives out gigantic quantities of $25/$50/$100/etc "gift cards" to basically anyone who asks for them who'll bring them good PR. (They also get large retail chains to give them out as prizes.) These cards are funded by outside donors, and they collectively bring in huge amounts of buzz and new donors (who end up donating more than the base amount on the card.) This is the for-profit twist on that... SwipeGood could likely get anyone who supports them (e.g., their investors) to put up money that [the investors] "would have given to charity anyway" for future stunts like this.
I guess that nobody ever invented a stranger and more complicated way of transfering money. Calling it "the easiest way" is really... well.. interesting.
Hopefully it'll be much shinier than X11 and less restrictive than Remote Desktop Protocol.
This is a great addition to the os. Imagine your house having one [desk|lap]top and a few tablets or phones. Hop on vnc on your docked tablet while someone is using the computer and you're as good as using the desktop. I see this as a move to push both os x and the i[pad|phone] as viable business devices.
This is possible with windows right? I vaguely remember using remote desktop a few jobs ago, but I dont remember if it was one account logged in at a time.
1. Communication. Developers use a completely different language than designers. If I come in talking about alignment, developers are thinking 'right left or center justified?' When developers start talking about recursion, I go to sleep.
2. Attitude. Often developers seem to think of designers as 'artsy' types, and design as 'nice-to-have,' which is to imply not necessary.
3. Attitude. Designers often get emotionally attached to their work and get discouraged or give up when someone disagrees, has a different idea or wants to go another direction.
4. I can do it myself. A LOT of developers - particularly less experienced ones - think design is something they can, and are, successfully doing themselves. After all, it's just pixels on a screen, who needs photoshop, right?
5. Small changes. Developers often make small changes to designs. 5px extra padding here, no margin there. Blue is blue, right? We'll just use that 10x10 icon the designer did for that page for this 25x25 icon we need on this page. This drives designers insane.
6. Eyecandy. This goes to a lack of understanding of the design profession; many think design is just slick icons and pretty colors. Developers who have worked with talented designers know that designers can improve entire systems, helping streamline work flows and adapt the system to actual users.
7. Bad designers. Oh yea, there's -a few- of us out there that just picked up GIMP yesterday and think a 600 x 600px favicon should be fine. Even designers capable of really good work may not understand why a 2400x1600 image cannot be used thumbnail-size on the page. This is sad, but I've seen it.
8. Lack of trust. Developers may have worked with bad designers in the past. Most likely they have, actually. They'll likely limit the designers interaction to making icons and css rather than involving them in the system design and planning. Designers may not give as much as they could because they don't trust the developers to value their input or even understand and execute their contributions well.
Of course, that's not to say all projects are this way, and in fact, when I've been involved in projects from early-on, this is very much not the case.
However, I've run into the above issues in my professional career more than once, working face-to-face with people. Trying to make the relationship work online, in projects as distributed as OSS projects are, that's very difficult.
But I think it can be done. For distributed design to work, designers need to be brought on board from the beginning, in the planning phases. The initial designer or designers would have to be responsible for creating a clear vision, clear guidelines, and a well-documented style for future contributors to follow. All contributions would have to adhere to those guidelines, and developers would have to be as adept at spotting violations as designers.
Part of the problem here is also making designers aware of projects to work on. Designers generally join different message boards (if they join message boards at all), read different blogs and generally don't run in the same circles as developers, possibly with HN being one of the exceptions. I'm not sure how to change that...
2. Make it discrete - What needs to be designed? The entire UI and workflows? The application icon? The internal navigation glyphs? Redesigning an entire app that has tens or hundreds of contributors can be daunting, but getting someone started with something small can be a gateway.
3. Leave it alone - One of the other commenters mentioned how a designer contributed something and then it was overwritten and ruined. Typically you don't want to have dozens of designers all working on a project unless there are fairly strict guidelines to work from. Have a working group at the beginning that can set the UI tone and create guidelines from that. Also a small review committee to review changes is smart, just as they do for code.
4. Version Control for Dummies - Put together a short explanation of how to use the version control system of choice, assuming no knowledge beyond Photoshop. Or find someone on the technical side who can be an intermediary/GIT trainer. The human part of this is very important.
Do those things and you should see prettier projects in the future. I know I'd love to get involved, but have no idea where to get started!
She sent the photoshop source file and a png to the mailing list, but was told to send in a patch instead, which meant she had to learn how to use git to check out the repository, add the icon to the repo, and then generate a git patch. Only after that, she was told that they couldn't use the photoshop source file because they didn't have photoshop. Finally, one of the developers imported the file into the GIMP, changed some stuff on the icon without discussion, botched the output and then added that to the project. That was enough for her to not try doing something like this again.
VLC is a product, that is widely used, usable (not the mac version, though), but it is extremely ugly.
It is quite hard to get designers to help us (redesigning all the buttons for example) for quite many reasons. The biggest reason is that we don't speak the same language.
Many designers don't understand the criticism that usually comes around with each modification in open source project. Many developers don't understand how to speak to designers in a polite way (they think they speak normally, but it isn't perceived as such).
Also, many (not all of them) designers don't understand the difficulties of usability, and sometimes mistakes it with "shiny". Usability of a desktop application is way more complex than a website, and the current trend of "removing functionalities" is not always welcomed by developers...
However, I don't loose hope :D
Development is modular â€" pieces can be added, removed, or changed out for other pieces. Several developers can work on the same project at the same time and not step on each others' toes (esp. thanks to modern version control). This works great with the open source model.
Design, on the other hand, benefits from being unified and consistent. The best-designed projects have one designer, or a small group of designers working together closely. This doesn't work well with open source at all.
This becomes pretty obvious when you compare Mac systems to Linux systems.
Until this issue is resolved (by, eg, open source projects bringing on dedicated designers) the symptoms are unlikely to go away.
I feel like a second-class citizen around developers. And I don't want to venture in to the lions den. After all, I "just make things pretty", right?
I hate politics. Many open-source projects are a power-struggle with entrenched developers guarding against change.
Design is all about visual relationships. Making a change to one small aspect to the design effects everything else. This is very frustrating in an open-source environment, where parts of the design can be changed by the masses compromising the integrity of the whole.
Our industry doesn't appreciate it. Employers don't care what open-source projects we've contributed to. It's all about paying clients.
1. It exposes a programmer's code work for all to see. If it's bad, you get more than just critique. Others can point out what is wrong with the code but even better, they can correct the code or help you see what is wrong. If it's good or great, it makes for an amazing addition to any developers resume for hiring purposes.
The same can not be said of designers. Sure they can get feedback and people can often point out what's wrong, but these feedback are often more vague. Rarely do they get a walk through tutorial of how to do things better, actually having someone go in and show them how to fix their design flaw (something that happens a lot on the coding side). Pointing something out and having someone help you solve your design problem are not the same thing.
2. I don't know about others but to me, a designer benefits more from having their own portfolio rather than something that they may have contribute bits and pieces together for a project. As a designer, I don't see the value over my own portfolio which I can get enough critiques on without having to contribute to an open source project. As a developer, I see a need but think in terms of what designers benefit out of this. Open source designs are not the same as open source software in all cases. As an entrepreneur, I hire designers base on independent skill sets which is extremely hard to measure when people are co-designing small projects.
3. Just a comment but it would seem this is geared towards a developer who can't design and want open source designs but where is the benefit the designer is getting out of this. Surely there is a better argument. For the record, I'm not arguing that designers can't benefit at all. I just don't see it outweighing the benefits a developer would get in the same scenario.
For open source games, the same question could also be asked for music composers, and again most of the same answers apply.
It might better to ask why is it so easy to get coders to contribute.
I am a designer and a FLOSS guy and I have actually researched this subject a lot, both in practice, in writing and in teaching. The essay I written for Smashing Magazine a few months ago might be relevant in this context, it is called "The Case For Open-Source Design: Can Design By Committee Work?"http://www.smashingmagazine.com/2010/09/01/the-case-for-open...
I identified three major challenges:1. Scratching an Itch2. Granularity3. Encoding/Decoding
I go through a few interesting positive examples for collaborative design processes and then try to propose some tips to making it work. Finally it's about a mix between leadership and openness, but this leadership has to be respected even if it does not translate to algorithmic metrics (like Google's A/B Testing of 41 shades of blue, more: http://stopdesign.com/archive/2009/03/20/goodbye-google.html)
If you prefer to go through this essay as a 20mins video presentation, you can check it here:http://vimeo.com/18761002
I start at 00:27:50
I realize this is a pretty long and complex answer for what sounds like a simple question, but in my experience this is really revealing the boundaries of the Open Source collaborative process as we know it and it will not change unless we help this model mature.
Don't -ever- expect anyone to contribute for free. When they do, treat them special instead of taking them for granted.
That seems like common sense, but that's what I see all the time when it comes to programming projects, open source or not.
Whether a change comes in the form of code fixes, documentation improvement, refactoring, design changes, or infrastructural modifications, the burden of understanding the potential scope of damage and doing the actual work is always, always on the contributor. Convincing another to take on the work on their behalf is always a possibility, but it should not be hard to see why design changes proposed through such a channel will often be pushed to the back of the queue, unless for some dire need.
Designer or coder, there is no excuse for not doing due diligence in making sure a contribution is a good contribution.
Looking at the discussion so far, there appears to be at least some consensus that non-trivial effort above and beyond the (hopefully) expected hand-holding must be dedicated to designers in order for them to become good contributors. And, in corollary, the natural conclusion is that it's unrealistic to expect designers to put in the necessary effort to become good contributors on their own.
Following from the above, the more crucial questions, I think, are "How do we convince projects that they should go out of their way to attract designers", and, "Do you really need designers? Really, really, need them?"
The second thing would probably be, like others have said, just to ask -- and part of asking for help is making sure that you are able to actually receive the help. Perhaps partially because of the above, and also because i am not really a programmer (yet!), i have come to be hesitant to even try submitting anything. The process is too complex. I feel very uncomfortable with patches and pull requests and test cases, so please don't make me deal with them. Offer a 'dumbed down' way of submitting our contributions, or, perhaps, make somebody a liaison between people like me and people like your developers.
Large open-source projects in particular -- Firefox, GNOME, KDE -- are ones that i have the most interest in contributing to, but they have extremely high barriers of entry for people like me. (To a relative outsider it kind of seems like the design direction of these types of applications/suites is strictly controlled by some high-up cabal of developers, though, so perhaps that is intentional.)
In the field I work in, designers and developers have equal standing, and need to create a middle ground of shared workflow, technology and design processes that balance development and design.
In most open source projects, there are too many barriers to entry (real or perceived) for designers to see themselves as participants. Everything from version control systems that don't provide any real benefit for visual designers to project leaders that see design as "eye candy" all reduce the appeal to designers.
Remember, too, that designers have loads of options if they want to work for free. You know all those "Build a Facebook clone over the weekend, it will look great on your resume" jobs on Craigslist? Designers get that kind of pitch ("Design us something for free; it will look great in your portfolio") constantly. Open source projects looking to recruit designers need convey some tangible benefit to participating.
In the design world, peer recognition doesn't come out of working on open source projects that their designer colleagues have never heard of. Every designer I know of will jump at the opportunity to do really great work, for free if necessary. Looking at the open source projects I'm familiar with, few of these look like the kinds of places where a designer would expect to create really great work.
Now that I'm in deep, let me go further... A motivated programmer can learn the basics of interaction design very quickly, and get the user interface to a point where it at least doesn't suck.
As a developer, you can contribute small patches, bits here and there or step in deeper and create new features or improvements within the current feature set.
As a designer, the bits and pieces option really is no option. Design can't be applied like that. It needs to be applied to the entire project in a consistent manner. Both visuals and user experience thinking. This makes it a far bigger commitment, something I imagine not everybody is willing to do.
If a designer has created multiple layouts he could also make one for free to get people interested in the other "premium" ones, so its not that every design has to be a payed one.
One reason designers usually don't contribute to open source, is because they're paid to improve UX/UI on their commercial competitors. If GIMP/Inkscape had the same UX/UI as the Creative Suite, there wouldn't be market for the latter (this is what designers are paid for, unlike developers).
This allows more startup opportunities or companies like Canonical (parent company of Ubuntu) to provide a free and open source product (Canonical actually has dedicated designers).
Where are the open source designers? copywriters? information architects? interface designers?
IMHO, designers don't usually feel any importance of open-source projects because most of them/us are used to things that are aesthetically pleasing, and they would not want to burst their/our bubble. If they we're given a choice between free Linux (assuming Adobe Suite works on it) or OSX, they would be getting OSX because it suits to their world, they would be even paying extra if it was to cost more. Also, they want something that just works and don't really care whether they can see or edit the source, since their coding experience usually ends with HTML and CSS, hence the apathy.
I've worked with quite a broad range of websites and the less control I had over my work, the less I enjoyed it. Solution? If you're able to find a designer for your project, make him feel special by taking him as an equal member of the team and give him full control of the design side (aesthetics). More so, let him start from the scratch. Although, arguing about functionality (UI and UX), which has logic in it, should be encouraged, you don't want to offend him by saying his designs look bad, because a criticism coming from a programmer is as bad as it gets. Coder's blogs are usually coloured dark blue or green, that tells a lot. That's also the reasons why most designers hate working for Google. One hour meetings whether a line should be 1 or 2px thick? If you don't really like what he is doing, ditch him.
I often use icons with GNU or CC licenses, for example. If only I could find a site with website designs like I can for icons (iconfinder.com, findicons.com) that would be great! I'd get a professional designer to use the open source design as a base and just tweak it.
Without these guidelines, it will be as tough to tell the designer what to do as it would explaining an obscure C++ error without any reference to C++.
Designers are simply unable to work in committee as stated by others here...
http://news.ycombinator.com/item?id=1148425 (with discussion)
Although Sodium Azide is used in systems which save thousands of lives every year - car airbags.
along with the related category, "how not to do it": http://pipeline.corante.com/archives/how_not_to_do_it/
As an old "fan" of rocket fuels in general and peroxides in particular, I still giggle a bit nervously at the chemical formula FOOF...
Seems most 'experts' feel that way.
When a plane crashes, it is standard procedure to determine exactly what went wrong, what weaknesses in the "system" enabled what went wrong to go wrong, what prescription is needed to fix that system, and for the system to be fixed.
This was a plane crash.
I know this article was about one man, but there's no mention of anything about fixing what must have been broken in the first place. Sadly, I fear, because it doesn't exist.
I can't even begin to imagine what it must be like to be going innocently about your own business, getting pulled over by a traffic cop, and then suddenly being hustled off into a hellish pit for nearly 30 years - voiceless, helpless, and forgotten while being robbed of everything normal in adult life and while bearing the stigma of child molestor.
We all plan for the perfect lives and then complain when things fall short. Well, in our sheltered little worlds, we have no idea what it means to get kicked in the teeth non-stop over the course of a lifetime. This story gives us just a little glimpse and we can all shudder just thinking about it.
I have nothing but the highest admiration for anyone who could endure all this and still emerge with the abiding spirit that Mr. Towler now displays. It is a small miracle that he is not broken, bitter, and vengeful. Let us hope he can still rebuild his life from its broken fragments.
Original witness statements are the only things that are reliable. After the victim has identified the "perpetrator" from a line-up, they forget the original face, and their memories become re-written to include the face they think is responsible. A friend of mine studying to be a cop knows this (all cops should know this) but they still persist in using testimony that they know is unreliable. Can you blame them though? If they didn't use the line, it would be much harder to get a conviction.
Courts should just read a description, one that was made before the victim (or interviewing officer) has seen the suspect they dragged in. Or the police should get a sketch (or computer sketch) of the assailant before anyone involved has seen any possible suspects.
A. convicting him on insufficient evidence.
B. failing to free him on sufficient evidence
Need to be brought in and asked for a reason for why this happened. If they can't come up with a solid reason justifying each action for why this has occurred, and if they do find a reason, remedies for the failure, then they have to serve the victims sentence.
When an airliner goes down, bosses and leaders scramble to find a reason to prevent it from happening again to appease the public, but in a case like this, a fate far worse than getting injured in an airplane crash, they just shrug it off and make a vow to be more careful with this kind of thing.
Better 100 guilty men go free than for an innocent man be jailed. The guys who incarcerated this innocent man better beef up their security systems. Injustice like this needs to be dealt with, and sadly, never will be. the end.
Miscarriages of justice happen. The real crime is that there seems to be no follow-up, no detailed reports, no proposals for making sure the same mistakes don't happen again.
That's the tragedy beyond the individual cases. It will happen again, in exactly the same way, for exactly the same reasons.
There's also an article about him on Wikipedia:
You can not tell me that the logic employed in building court cases is at that level. 12 angry men? In real life there is no juror #8.
"Better that ten guilty persons escape than that one innocent suffer"
They may be a trashy lads mag, masquerading as a high-brow product for upper class gentlemen, but for stories like this, few publications tell them better.
I recommend Truth Machine (book) too, basically a Sci Fi look at if someone invented a machine that can tell if a person is lieing and how it affects society...
To see a mathematics textbook from VCU appear on Hacker News was a welcome sight indeed!
I predict that things will turn out fine because people will converge on speaking SLAAC between OS X and the router and DHCPv6-PD between the router and the ISP. But you have to have a router.
what is it about ipv6 which attracts religious nuts?
I ended up restoring from backup.
./mkzone example.com > /var/named/chroot/etc/named.conf
in at least tcsh, "set noclobber" will help with this. when you try to overwrite a file that exists (usually from doing > instead of >>) you will get an error that the file exists instead. if you really want to overwrite the file, you have to use ">!".
Not done that exact one, but I've added firewall rules that cut me out in exactly the same way.
Another favourite is typing "shutdown -h now" into the wrong terminal: I know a few people who have admitted to doing that.
mv stuffwithoutbackup tosomeotherplacewithatypointhepath
curse at typo
rm -rf tosomeotherplacewithatypointhepath
curse more vigorously
This way I can be sure I'm typing `halt` into the right box, because it's easier to spot the wrong color than the wrong hostname in 10pt text.
4. Use CVS to store configuration files.
using CVS ? even if it was written 2009 that still pretty backward...
Its no type, its a steam locomotive. http://www.freebsdsoftware.org/games/sl.html
So if $100mm = 100 billion page views/yr. Then by that logic reddit should be making ~12 million a year, which doesn't seem to be that case.
And that would be in addition to the subscriptions people are buying.
My hat's so far off to this guy, its on the floor in front of me.
My family has a history of retinal detachments, and I have a tear myself. But I have never given it much thought, because these are always things that happen to others, not you.
Are there input devices based on Braille, wondering if it would be faster ? As an aside, there used to be code in the Linux kernel which on certain kernel panics would communicate the error message through Morse code using the integrated speaker.
Edit: About Braille, I was thinking more in the lines of a small 6 button or a similarly limited device.
image = eog_thumb_view_get_first_selected_image(EOG_THUMB_VIEW (priv->thumbview)); g_return_if_fail (EOG_IS_IMAGE (image)); file = eog_image_get_file (image); filename = g_file_get_path (file);
The horrible thing about ALS is that your body deteriorates, while your mind stays 100% fine.
Stephen was physically in pretty rough shape by the time I started. He loved playing video games with his brothers, so Jamie made a little mouse-like device for Stephen that also allowed him to mimic keypresses.
Once a week, we'd all hop online and play Diablo together. It was interesting getting to know Stephen this way - he was barely able to talk when I first met him, but he could type using Jamie's device.
(Aside: Ben, the third brother, now runs PatientsLikeMe.com, a support community for people with diseases like ALS).
But it takes incredible willpower to continue doing anything in situation like this. My hat's off.
It's not a weird-ux like IE, it's snappy unlike Firefox, it isn't a memory-hog like Safari, and it's well-supported (unlike the runner-ups).
It also has an epically nice PDF reader, which could be its own product and I would be very, very happy.
Not sure about Chrome, but I feel like Android is a defensive measure against a possible monopoly. If one company controlled mobile then Google might be locked out of whatever greater potential mobile could reach. So Android doesn't necessarily have to be financially awesome to be strategically successful.
It didn't take any time to get adjusted with the new Firebug like CSS editing and I no longer have to deal with having to regularly restart Firefox once it becomes sluggish.
Check out "Google Chrome Developer Tools: 12 Tricks to Develop Quicker" by Paul Irish: http://www.youtube.com/watch?v=nOEw9iiopwI
The majority of Chrome users have no idea that their browser is silently updating itself without their knowledge or consent, and if they did, they wouldn't have any idea how to shut it off.
I can think of plenty of cases where most users would want to turn it offâ€"tethered to a slow data network, throttled bandwidth, etcâ€"but the precedent it sets bothers me more than any hypothetical inconvenience. It's like I'm suddenly, unknowingly leasing a little space on my machine to Google, and I'm not always sure what they're installing.
Nowadays, the proportion of talented commoners to moneyed elite is considerably greater than it was even 100 years ago, but the basic principle remains: foster connections among the elites, and give them first crack at any emerging talent. This way anyone with a potentially destabilizing talent becomes attached to the existing power structure at an impressionable age. Better to invite them in and dilute the pool a bit than risk them draining it later.
Any commoners who don't work out, they will drop without hesitation.
I'm not saying this is evil. If you were among the elite, you'd probably do the same thing. And I also don't propose that this was all cooked in a room full of cackling conspirators rubbing their hands together. It's just the way a power structure works. From their point of view, I'm quite sure they see this as noblesse oblige: they're just reaching out, "giving back" and trying to help useful and interesting people succeed. But it nevertheless has embedded in it the idea that the most important part of success is meeting people who already have power.
And as the complainant in the letter writes, it sounds like all the hoi polloi ("Group B") at TED actually buy into this as well. Maybe he should be working on something amazing instead of hoping Bill or Steve or Sergey notices him.
Mind you, I've only been to the one ted (2010) so maybe I'm not the big authority here, but I found 'A' people approachable and friendly and I'd say it was pretty great.
At the same time, I think the authors comments about Group A and Group B is a huge opportunity for another conference.
He seems to think that all these 'group B' people are people who don't have anything interesting to say. How many people get up on stage at TED and make amazing presentations, and all of a sudden are then part of group A.
The Group B's should be searching for other Group B's who have amazing stories and knowledge to share. That is why everybody is supposed to be at the conference.
I've got a few friends who have an incredible nack for meeting ANYBODY and finding out something amazing about that person which adds to their understanding and appreciation about life.
The Group A's are just Group B's that you already have some knowledge about.
- "Say John, how many people have you uninvited today?"
- "Well, only 10. What about you?"
- "Ha! I just booted 20 attendees whose haircuts I found deplorable. Then invited this one cousin of a friend who is a blogger and maybe he'll say something nice about me and TED to his online audience."
Redacted person invited to TED by donor. Whining. Next year, redacted kicked out of TED due to falling out with said donor. More whining.
For quite a while I had thought it was an issue of the low-hanging fruit already having been plucked, but recently I've become less sure. This piece only adds to those doubts. If donors are calling all the shots, no wonder it's become driven by populist political causes and steeped in PC overtones.
Apple is sliding forward the lower bound on software that can be expected to run on a newly-purchased computer by several years. There's no indication to the average user which of their applications will stop working on their next computer, and there are oodles of copies of PowerPC applications out there in the wild.
I wish it were possible that we could say goodbye to Rosetta and Universals Binaries yesterday. However, there are a good number of "Universal" pieces of software out there in common use, that have vestigial PowerPC components. I just ran into one yesterday, on a business critical piece of software at my company - supposedly UB software, that has a command-line utility that is compiled for PowerPC, and that in the most current version of the software. Quite a number of times, I have run into software that is UB, and yet part of the install process relies on Rosetta.
Oh, and I have to run Acrobat 7 for a couple business-critical websites, because we make templates using an old build of PDFLib, and since it's legacy software, we won't be upgrading to a newer build.
I believe I will have to setup an instance of Snow Leopard in Parallels, if I move to Lion.
Well, I don't fault Apple for this. Perhaps it will force this nonsense to stop sooner than later.
My Dell netbook is still running 10.6 because 10.6.2 broke support for Atom processors. Yeah, it's annoying not to have the latest version of 10.6, but 10.6 still works.
I wonder though, if Apple were to transition to their A4 chips for Macbooks whether we'll see Rosetta come back in an ARM compatible flavour.
Not that many support doing so, nor do most suport the full range of what they're supposed to be able to do. That's a different issue. Personally, I think the single greatest flaw with Gantt charts is that they're (technically) supposed to always have everything add up to 100%. Which means either you set something up to do it for you, or you have incredible book-keeping that becomes ridiculous when you have changes or more than a handful of entries.
I might be misunderstanding, but until a piece is fully received, you can't hash it and check it is right. This could therefore lead to many clients having partially incorrect pieces, if they keep passing it around.
I've found (and I'm not 100% sure why) that most bittorrent clients do find they get some number of dodgy pieces over time, so this isn't just a theoretical problem.
I'm on horrible hotel wifi or find myself a late seeder next to massive seed boxes on whatever tracker I'm on. This would give a good bump in the ratio the new guys and even things out if it works in theory.
Cynics? I'd have thought a cynic would accuse Google of having an ulterior motive other than wanting Internet freedom.
"Why Wired Uses Titles Referencing iPhone and Verizon and ending in a Question Mark?"
As for this case, this appears entirely analogous to the Carterfone decision.
Other folks can connect FCC-approved and unlocked gear onto 700 MHz without encountering a carrier prohibition (akin to what we have with wired telephone connections) while paying the 700 MHz carrier(s) for their services.
I seriously doubt that Verizon would be denied the ability to sell locked phones out of this. There's no way Verizon lawyers would sign that one.
So if the carrier CAN prove that it won't damage the network, it can block it? That can't be right.
That the iPhone 4G is hampered by this is just a pill apple has to swallow. As if there weren't more bands that could be used to serve non-free phones.
This is about radio.
As you sit in your car, tune your radio to your local Top 40 station. You'll notice that, even when you turn down the dial to the lowest audible setting, you perceive a constant drone of music/noise (depending on how you feel about pop music). Now, tune to the local classical station. Little spurts of noise can be heard, punctuated by... quiet spots. The average consumer thinks: "What's wrong with this music?! I have to turn up and turn down my volume all the time!" Connoisseurs of classical music, however, encourage dealing with this high dynamic range, because [dynamics] are a critical part of classical music.
Here's the sad part: POP MUSIC DOESN'T NEED TO HAVE ITS DYNAMIC RANGE SMASHED! Radio stations can easily take high dynamic range source material and run it through a [compressor] to limit the dynamic range, thus making their music more car compatible (solving the classical music 'problem'). However, consumers expect to hear the same when they download an AAC/MP3 and play it outside their car. "What's wrong with this old recording, it's so quiet", is a common complaint. Of course, when iTunes (and competing software) have features like automatic output leveling ([Sound Check]), compressing dynamic range at OUTPUT and not at MASTERING should be the choice producers make.
Yet, the industry persists, making the music louder at the expense of eliminating its dynamic range. They're painting soundscape with a more limited palette (though, doing a surprisingly effective job, given the limitations).
: http://en.wikipedia.org/wiki/Loudness_war: http://en.wikipedia.org/wiki/Dynamics_(music): http://en.wikipedia.org/wiki/Dynamic_range_compression: http://support.apple.com/kb/HT2425
I can even understand their fear. Until now every format has had a mass market lifespan of ~15-20 years. When people switched, huge numbers of 'library' albums would be sold providing a nice amount of income for very little work.
It's hard to imagine people ever paying to replace existing mp3/aac tracks, and worse - you and I can give each of our children a perfectly reproduced copy of our entire music library.
With the introduction of Blue-Ray audio, there have been claims that the added resolution makes it sound better. However, some members of the Boston Audio Society did extensive testing where they compared (A/X/B) high-quality Blue-Ray music versus the same music downsampled on the fly to 44kHz/16bit -- and even after extensive listening on very expensive equipment by expert listeners, it was impossible to tell the difference.
The results are reported in:E. Brad Meyer and David R. Moran, "Audibility of a CD-Standard A/DA/A Loop Inserted into High-Resolution Audio Playback", JAES Volume 55 Issue 9 pp. 775-779; September 2007. (http://www.aes.org/e-lib/browse.cfm?elib=14195 -- I read a PDF last summer, but now I can't find a non-paywalled version).
At the same time, there is widespread agreement that music released on Blu-Ray Audio sounds better than CDs -- but this is not because of the extra bitrate, it's because the sounds engineers pay more attention to details, and the discs are marketed to Hi-Fi enthusiasts, so there is no pressure to e.g. destroy the dynamic range by over-compressing the sound (which makes it sound superficially better on low-end equipment).
It's still useful to record at 24-bit, though, to give yourself the extra headroom and avoid digital clipping. Recording at 24-bit is basically a no-brainer.
Don't even get me started on recording using sampling rates higher than 44.1 kHz. This has been discussed ad-nausem on various audio forums.
Mix Magazine (I think) ran a double-blind test to see if people from all walks of life, including experts in the audio industry, could hear the difference between CDs and super-audio CDs. They could not. I believe we have indeed reached the limits of human hearing.
So, this is apparently not about compressed music then? It must be about uncompressed music. Well, we can't change the redbook CD standard. I guess these people must be talking about DVD-As and SACDs then? They clearly are not.
Now there is one thing that I would actually love to see (but that these people do not seem to be talking about). I would love to buy 24 bit 96 kHz FLAC-encoded music on iTunes. Or maybe not FLAC but Apple Lossless or whatever and maybe not iTunes but Amazon or some new HP thing. I don't care. But Lossless, High-Quality Music in some major online music store. Now that would be something!
Debating the numbers without discussing the signal chain is somewhat ridiculous. A fantastic (great gear) 16/44 chain will sound a lot better than a crappy 24/192 chain. The concept of a signal chain "only being as strong as the weakest link" is of great importance.
That is only the tracking side of the equation. Eventually, individual tracks get mixed down. Your summing bus is the flip side, and there is a lengthy debate over mixing in the box (digital summing) vs. analog summing, which can be done with a traditional mixing console, or with the recently invented category of gear known as "summing boxes." (There are of course many further variations and permutations.)
On top of that, the skill of the engineer will also make a large difference. Those interested in the details may wish to visit a site such as gearslutz.com where these topics are discussed and debated in great detail.
Fixed that title for you.
As to why I need that resolution, my ancient analogue synth can sound good at that high resolution.
As for distribution, I just post FLAC files to my website.
I bought a low end recording audio interface( E-MU Tracker Pre) whitch features a pretty decent DAC and boy oh boy does it make the music pop!
Comparing a 192kbps MP3 featuring a big dynamic range with headphones connected directly to the on board audio on my laptop vs headphones connected to my Tracker Pre there is a night and day difference. On the external sound card the MP3 still sounds a little flat, but it does it with class as opposed to boring on the onboard DAC.
So before you get into the whole "OH LAWL, MUST ONLY LISTEN TO FLAC" thing start by updating your sound card, its well worth the money!
The problems are compression and end-user audio equipment. (And they are only problems if the consumer cares.) If the industry wants to tangibly move quality forward, they should simply up the standard bitrate to 320 or beyond, today.
Which encoder/tool/settings do you recommend for Windows (and Mac) ?
I really don't understand this at all. He seems to be saying that using "straight C++" would mean using the worst parts of the language in the worst ways, but not taking advantage of the features that make C++ usable. If he really thinks everyone uses macros, code generators, or code transformers to do real-world C++, then he's wrong. I've been using C++ professionally for almost ten years now, and I've never seen anything like that except: a few legacy macro tricks that we easily replaced with better, non-macro techniques; and Qt's preprocessor, which we never actually used in production code.
Style points for C++ have been rehashed endlessly. "C++ Coding Standards" is pretty good IIRC: http://www.amazon.com/Coding-Standards-Rules-Guidelines-Prac...
For gaming and embedded software, you will need further rules for performance. I'm not sure why this is a ding on C++. Doesn't any reasonably powerful language have performance pitfalls? Don't use CLOS in your embedded systems, folks.
C++ as a medium for our art looks more like statuary marble than modeling clay: it requires a team of muscular stone cutters under the guidance of a genius in order to produce some amazing sculptures. And once a given idea has been translated into the stone, you hardy can change it without re-sculpting most of it or having to work in the constraints that the shape it currently has impose on you.
This is only true if your system is badly factored or if you are averse to recompiling. "Ahhh, arrgh, no, I refuse to change the interface of this fundamental class referenced by every other object in the system because the next compile-link cycle will take ten minutes! I'll leave it crappy for the rest of eternity just so I don't have to wait ten minutes for a compile, or because my approach to changing this extremely fundamental class is to keep making haphazard changes to its interface until my code finally works, so my ten or twelve compile-link cycles will cumulatively take almost two hours." Fine, we'll have an adult make the change instead.
Now I'm really not suggesting that it doesn't suck when you have to wait ten minutes to recompile your system when you change an interface that every other source file in your system includes, but I hope recompilation time is not the weightiest consideration in that case.
It's not a coincidence that the more a language is dynamic, the less need there is for fancy debugging tools. Who needs a watch window indeed, if I can just add on the fly a widget on screen that graphs the value of a given variable?
This is a legitimate complaint. Building instrumentation into a C++ system is a pain in the ass, and it will never be as powerful as in a language with introspection.
Well, the art of sculpting in C++, the art of design, becomes really the art of subdividing our sculpture in pieces, the real design challenge is all about how to cut or work into pieces. Too many of them and the sculpture will be a fragile and ugly mess (translation: craptastically slow OOP shit). Too little and we loose flexibility.
As far as I can tell, the point here is that if C++ was a better language, bad design wouldn't be a problem. If it took C++ to drive him to consider OO design principles, I'd hate to see the code he wrote in other OO languages. Also, decomposition is not the only consideration. There are cross-cutting concerns such as memory management, logging, and instrumentation.
The design principles at the end of the post are better and more comprehensively covered by "Large-Scale C++ Software Design": http://www.amazon.com/Large-Scale-Software-Design-John-Lakos... Some of the language points in that book reflect the immaturity of C++ implementations when the book was written, but the design guidelines are still relevant.
In general, it's very hard to say anything original about C++. Practitioners and proponents of C++ are much more aware of its limitations than its detractors realize. Also, this may come as a shock to the web generation, but C++ is a topic that is very well covered by available books. Just as you might browse through a few relevant blogs to see if someone else has already made the same point you were about to make, with C++ you should do the same with the highly-regarded books.
No, you are not. Don't do it, use composition instead. [More Effective C++, 33 Make non-leaf classes abstract]"
Sigh. Dude either didn't read the book, or didn't think about what it's saying; he's just quoting the chapter headings and drawing a silly conclusion. Abstract classes can most definitely have data in them, and Meyers is not saying that you should restrict yourself to object composition (he has a whole section on how and when to use inheritance in the first book!)
The point Meyers was making is that if you're allowed to instantiate a base class that implements an assignment operator, you can easily get into a place where you can do bad, mixed-type assignments. If you make your base classes abstract, you can prevent this problem -- hence the chapter title.
This isn't the only bit of bad advice in this blog post -- just one that I picked out at random. It's another example of a rant by someone who knows just enough about C++ to be dangerous, but not enough to be insightful. Flagged.
No. Just don't.
I'll say this about C++: the worst thing about it is that each new job requires you to learn what is 'good' and what is 'taboo' at the new company. One man's natural and elegant is another man's obtuse and illegible.
(struct person 6.3 63 63)
(make-person :height 6.3 :age 63 :weight-in-kg 63) ;; or better :weight (kg 63)
"Clojure doesn't have the parse-integer function, but I was quickly able to implement something that did the job by calling out to the Java parseInt method."
This has to be remedied. You need to have native control over basic reading/writing; don't offshore that to another language, even one your language is implemented on-top of.
I agree with the sentiment against ASH (Arithmetic-SHift); seriously, division/multiplication as 2^N shifts is a performance hack, and a useless one at that (smart compilers already do this, and stupid ones are bytecode compilers.)
Common Lisp already has about 9 division operators (yes, NINE) and it would have been a good opportunity to introduce them and their various uses. They are: /, floor, ffloor, ceiling, fceiling, truncate, ftruncate, round, fround -- for integers and floats respectively, along with MOD and REM
 excellent candidates for removal in future CL with CLOS-based type hierarchy; type-dispatch ftw! With ML-style type annotations it would even be feasible to do type hints inline, like (values (/@double-float 22 7) (/@int 22 7)) using @ because colon is a package separator.