Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror

Comment Kinda Pricey... (Score 1) 659

Given that I never paid more than around $20/year for their print subscription, that's a bit steep. I'm all for subscription models for my favorite sites (Wired's one that I go to for entertaining tech news). $5-10 a year, and I'm in.

Heck, for that price, I'll even be OK with static ads that I know are sourced by Wired directly. Wired's demographics are people who like geeky toys. A few car companies could probably fund the whole site. You don't need targeted tracking and all the schemes to make sure everyone who ever showed an ad to the user gets a cut of the sale. Keep it simple!

-Chris

Comment Re:The one lesson developers should learn (Score 4, Insightful) 39

There's nothing wrong with depending on 3rd party tools and products. The problem is that most of the REST APIs that people are more and more dependent on are services, not traditional libraries.

If a library vendor goes out of business, I still have the last copy of the library and possibly even the source code. My product can continue to function until I find a suitable replacement. This is an acceptable cost of doing business, especially since commonly used libraries rarely just disappear.

If a service API goes down, my product is essentially bricked until I find and implement a replacement. This is one of those risks that most modern (er, young) developers don't appreciate. We haven't had a bust yet that shuts down a number of services over a relatively short period of time (hint: if you're using the service for free/at-a-cost-less-than-power-consumption or if it's not the vendor's core business, such as Parse, there's a good chance it will go away at some point). When that happens, the successful apps that relied on less successful services will be in a tough spot.

It'd be fun to do an analysis of the various API services people use and their interdependencies. I bet we'd find a few really scary single points of failure...

-Chris

Comment Data Scientists and Web Masters (Score 1) 125

I remember when Web Master was the hottest job on the market with six figure salaries and bountiful job prospects. Then we realized that part of their job was better handled by sys admins (setting up and maintaining the web server infrastructure) and the other part has better handled by a combination of software developers and designers (with some HTML chops).

Data science will go the same way. Half the job (gathering, transforming, processing data) will go back to traditional analysts (what data scientists used to be called), half the job will go back to software engineers (writing the tools that do the processing), and both will rely on statisticians to ensure they're actually doing their analysis correctly. (ok, just kidding on the last one, they'll keep doing sloppy analyses and no one will be the wiser - see: blindly applying p-values and t-tests, picking an arbitrary 'k' for k-means clustering, using discrete classifiers for continuous values (and vice versa), deep learning, and so on... )

-Chris

Comment Re:Response is simply common sense (Score 1) 66

You're posting as an AC, so it's not really worth responding, but...

Please give me some citations to support your claims that millions are dying due to the FDA holding back innovative treatments.

While you're at it, give me some citations that show that the average American can properly interpret the result of self-prescribed tests and make sound medical decisions on their own without the advice of experts.

For the first, cancer is the genomic disease that kills the most people. There are roughly 600k cancer deaths per year in the US (http://www.cancer.org/acs/groups/content/@editorial/documents/document/acspc-044509.pdf) While it's a high number, it's hardly millions (there are about 1.6M new cancer diagnoses per year). And there just aren't any good blanket approaches on the horizon that will make a dent in that number (there are lots of interesting things being tried, but none of them have panned out yet, despite what [pick your favorite popular science magazine] might tell you).

For the second, I'll "cite" the entire anti-vax community as my counter example. But also see my comment about GWAS and reproducibility (and do the research yourself, it will help you understand how complex and incomplete the data actually is). Most of the science around genomics is not settled yet. And even in the cases where it is, there's still a lot of uncertainty around appropriate responses and treatments.

I also challenge you to get your genome sequenced and analyze the data yourself. And by that, I mean actually get your genome sequenced, don't do 23andMe's microarray panel. Google "whole genome sequencing service providers" to get a list of places that will do it for you. Go for 30x coverage to get data you can use for variant detection. Do an exome panel if WGS is too expensive for your budget, you'll get most of the useful information with that.

The ability to sequence individuals is definitely one of the most interesting things going on in biology right now, but it's still in its infancy as far as our ability to understand and apply it. We'll get there, but it's going to take time and effort.

-Chris

Comment Re:Response is simply common sense (Score 3, Interesting) 66

Single cell sequencing isn't useful as a diagnostic technique for the same reason I outlined above: every cell has a slightly different genome sequence.

When you're sequencing for diagnostics, you need a consensus genome for the tissue or tumor, not the genome for individual cell in the tissue or tumor. That's because not every cell in the tumor will necessarily have the variation that led to the tumors and it's possible for a single tumor cell to be in the healthy tissue. It's only over populations of cells that the negative effects can be measured properly.

If you're measure gene expression instead of DNA variants (e.g., looking for gene fusions), the problem is even worse. Not only do you need to sample many cells, but some of those cells need to be actively expressing the damaged gene to be able to sequencing it.

Disclaimer: I helped develop a single cell sequencing product and currently run a gene sequencing software company. I'm also friends with people at the FDA. I can assure you, they're not protecting profits for anyone and have the best interests of the patients in mind. It might look like bureaucratic overreach at times, but their goal is for only safe products enter the marketplace.

That goes for interpretation, too, which is why 23andMe got smacked down so hard. The science connecting genotypes to phenotypes is not as strong as the popular press would have you believe (there's currently a reproducibility crisis in the whole genome association study (WGAS) community, where most of the disease/gene associations come from). Sure, you can go to pub med and read all the studies, but understanding the body of knowledge to place those studies in context is difficult even for professionals.

-Chris

Comment Re:Response is simply common sense (Score 4, Informative) 66

"Are you so sure? Does it not make some sense that advancements could be made on how much you need to collect?"

On this point, yes, we're pretty sure.

Here's the problem: when there's something bad (bacteria, virus, mutated DNA) in your system, it usually appears in very small copy numbers (copy number is a technical term that tells you how many copies of something you see in a given sample). The relative abundance (another commonly used term that tells you how common your target is compared to everything else in the sample) of the bad stuff (not a technical term) is usually very small compared to the good stuff. So much so, that often times you need a large sample just to get a single copy of a bad thing. In most biological systems, we're talking needle-in-a-haystack small copy numbers for bad things.

Think of it this way: Let's say you have a gallon bucket full of coins with only a few quarters. You randomly sample a cup of coins. Can you confidently say there are no quarters in the bucket? Now say the coins are flowing through a series of tubes (no, these are not bitcoins on the internet) and your sample is determined by the coins present when you siphon off your cup's worth. What would the relative abundance need to be before you can confidently say quarters are present in the system using a cup for sampling? How about using a quart for sampling?

Somewhat like the laws of thermodynamics limit the ability to create perpetual motion machines, relative abundance/copy number place hard limits on the sample sizes needed to detect things in blood with confidence.

-Chris

Comment Re:Wolfram language isn't free (Score 2) 214

"Who ever heard of a language you had to pay to use?"

S/S-Plus, SPSS, Matlab, IDL, PV-WAVE, Mathematica, AutoLisp (AutoCAD's language) and a range of other smaller languages developed in the late 70s and 80s and targeted at very specific technical markets.

To some extent, Palantir, Tableau, Spotfire, and even Excel also all are programming environments that are close enough to languages to count here (they all have solutions close to Scratch in spirit).

I'm just scratching the surface - every industry has these languages and environments. Sure, Python (NumPy/Matplotlib), R, and many of the Java-based environments and C++ libraries can be used to replace these, but most customers don't necessarily have the resources or time to move to these solutions. And, those solutions are never complete replacements. Believe it or not (yeah, I know this is /.), many people see value in using commercial solutions that meet their needs better than the free-as-in-beer/Free-as-in-ideology alternatives.

-Chris

ps: Don't forget Oracle and their flavors of Java and PL/SQL that are tightly integrated with the database

Comment Unless there's an Advertising Crash... (Score 4, Insightful) 250

Google and Facebook make almost all of their money from advertising/consumer tracking related activities. Both would be very different companies of they had to rely on direct revenue sources.

Facebook could shift to a subscription model and probably do fine - I'm guessing at least 100M or so people will pay $5-10 a month to keep sharing photos with friends and family - FB works well to keep people connected. If they can't run their infrastructure and development on $500M-$1B a month, they already have bigger issues that will bring them down.

Google will have a harder time. They have nothing of value that could fund their operations beyond the ad/tracking services. A crash in the ad market would probably be the end for Google.

Amazon is probably fine for a long time. The web needs a storefront, Amazon provides it.

Apple can crash by ignoring user's needs. As a hardware company with a ton of money in the bank, it will take a while. But, Apple could lose market share quickly if another consumer computing trend emerges that cuts into their hardware business. See Blackberry for a recent example.

MS is too entrenched in the business/consumer world to go anywhere. Just like Oracle won't go anywhere for a long time.

Just my quick thoughts on the topic...

-Chris

Comment Something Fun, not Math (Score 1) 140

First off: avoid the algorithm and math problems. The one or two geeks in the class will love them, the rest of the class will be turned off from programming for the rest of their lives. I have a Ph.D. in CS and still hate those types of problems (ok, I have a love/hate relationship with those types of problems - i love them, but hate using them for pedagogical purposes).

That said, the single best intro to programming/software engineering project I had was a graphics programming project when we barely knew how to program. Our professor gave us a small library that had functions like "create_window()", "draw_rect()", "clear_screen()", "get_input()" and had us do a series of exercises that put objects on the screen, moved them around, and then refactored into our own graphics library. Some of the more advanced students made simple games.

From a software engineering perspective, this taught a number of important lessons early on:

- Code reuse/trusting third party code (we had a library for the complex stuff - if you can stop NIH syndrome before it starts, you've already won)
- User interfaces (we had to get some input from the user to decide what to draw)
- Event loops (software does not live in a vacuum, despite what the functional guys want you to believe ;) )
- Debugging/iterative development (no one's project worked the first time)
- Teamwork (do this as a team, have different members write different parts to learn how to interface with other programmers... save pair programming for later)
- Refactoring/code organization (how to recognize when you've wrote the same code for each shape and move that into a function)
- That you can do cool looking things easily with software (never underestimate the power of a graphics to get people excited about computers)

This was in 1992, so we used X windows on Sparc stations and wrote everything in C.

In 2016, here's how I'd do the same project:

- Use (simple) Javascript (get over any biases you might have)
- Stick with simple functions and introduce hash tables/dicts as a general purpose container. Don't do objects (esp in JS, since there are too many ways to do them)
- Provide a library that creates an SVG canvas (use this as the graphics area)
- Create a few related elements like a text box or buttons for controls and user input, but do this via your library
- Have a mechanism for callbacks/closures (don't tell them what they are yet and lose them, just show them how to use them)
- Do it entirely in the browser with a simple text editor (this is a development environment everyone has on their computer already, IDEs are a course on their own)
- Have some exercises that use the interactive developer interpreter
- For the advanced students, give them a library call for loading remote data and have them change their graphics in response to it

In addition to the stuff we learned, this also:

- Introduces the browser as a development/rapid prototyping platform
- Gives students a basic idea of how web content gets made
- Teaches some basic networking
- Gives the advanced students a platform to get creative with

Good luck!

-Chris

Comment Reminds me of David Crane's Atari 2600 App... (Score 1) 57

The app, if you haven't seen it, is an interactive "book" that covers the basics of the video system for the Atari 2600. It uses a mix of prose and a basic simulator to introduce and demonstrate different techniques:

https://itunes.apple.com/us/ap...

Sure, programming the 2600 is a world removed from Victorian England, but interactive content done right can be very engaging, as David's app demonstrates.

I'm sure there are countless other examples of interactive content people have developed for mobile devices, and those might be the reason we don't see more of them...

-Chris

Comment DAMN Interesting Report (Score 1) 84

My advisor had a good way of keeping his student's writing modest and in check. First, words like the ones these researchers looked for just we're allowed. But, to really drive the point home, he'd replace every instance of "very" with "damn". It was damn interesting to read your manuscript in that context.

We need more advisors like him.

-Chris

Comment Re:Its always someone else's problem (Score 5, Informative) 303

"explain how poor people are prevented from voting "

A few ways. First, make sure the polling hours are during the work day when poor people have to make a decision between feeding their kids that night or voting. Also, make sure early voting has a short window. Then, require IDs to vote. But not just any ids, limit it to IDs that take some effort to get, like drivers licenses or state issued ID cards that can only be issued at the DMV. Close some DMVs and keep the other ones open only during those pesky business hours. Ensure the lines are long enough that it will require a three hour time commitment to get an ID. Once they reach the counter, turn them away because they're lacking some random piece of paperwork, even though they have more than enough with them to establish identity (true story: this is what happened to me last time I renewed my license in Texas - two afternoons off work and six hours in line).

That'll keep poor people from voting.

"[explain how] rich people who are non-residents can vote in local elections"

They can't, but they can flood the media with their message a strongly influence elections. They can also ensure that only topics that matter to them make it on the ballot. And after the election, they can just get their buddies who just got elected to do their bidding.

"That goes counter to every election system I've ever heard of."

My guess is that you've only read about elections systems in textbooks and never bothered to learn how they're actually implemented and commonly manipulated. As long as we've had electoral processes, people have found ways to game them.

-Chris

Comment Re:Uber of Software Development? (Score 3, Interesting) 181

Um, the OP is wrong about the status quo? Look, most good devs I know with 5+ years experience make in the mid $100k range, have great benefits, and can find a new job on a moment's notice. If they consult, they do it because they can have a nice rate that gives them flexibility in other areas of their life. Most non-devs I know would love to make half what the devs make and have that type of job security. (and I'm not located in CA, NY, WA, or MA)

Also, most startup CEOs don't make millions. Most are looking for new jobs after a few years of making nothing. As for non-startup SMEs (small/medium enterprises), most of the ones that employee technical talent treat that talent well. Sure, if things go south, they may have to lay people off, but see my first paragraph for the solution.

Remind me what's wrong with the status quo???

tl;dr; developers have it really good right now. Quit your bitching.

-Chris

Comment Re:Seems like all social media ignores the obvious (Score 1) 83

I think it's actually simpler than that. I don't think Facebook can technically do it.

You can look at the ordering and filtering issues from two perspectives:

1) It's a great feature for the user to de-clutter their timeline and show them relevant posts.
2) Showing every post to each user and giving users more custom filtering tools is actually technically challenging due to the underlying architecture of Facebook

My money's on option 2. That's not to say that you couldn't architect a system that does exactly that, but I suspect Facebook is too far invested in their platform to change things drastically.

-Chris

Slashdot Top Deals

The Wright Bothers weren't the first to fly. They were just the first not to crash.

Working...