Hacker Newsnew | past | comments | ask | show | jobs | submit | vishbar's commentslogin

That is really interesting! I never had an ant farm, and I'm glad I didn't given what you've said.

Are ants similar to bees in that there's one egg-laying "queen" that you have to gather, or can you just gather a collection of individuals from a colony?

Your kid probably already knows about this, but have him check out the YouTuber AntsCanada. I'm not particularly into ants but I find his videos fascinating.


Ants have queens. Ants are a kind of flightless wasp, they have a lot of commonalities with the wasp/bee family.


My kid has been aware of AntsCanada for a long time, and has purchased lots of supplies from them.

Yes, most ants are similar to bees in that way. In fact ants and bees are very closely related. But a few kinds of ants (for example the invasive Argentine ants), can have multiple queens in a colony that cooperate with each other.

The reason for this rule is the ease with which ants become invasive species, and how much damage they can do.


Does your kid know about SimAnt?


He's at school so I can't just ask him.

But if it comes to ants, I'm willing to bet money that he knows it.

I remember being at a bug fair with him a few years back. There was a grad student with a display including some fossilized ants. My son came over, looked, identified the genus, began pointing out the identifying characteristics and named multiple related current species. The grad student's jaw dropped open. The only things that the grad student knew which my son didn't was how old the fossil was and where it was found.

And here is some fun trivia. If you look, between the thorax (where the legs grow) and the gaster (the bulb at the end), there is a very, very skinny petiole. The only food that can pass through that and keep the ant alive is high energy fluid. So a major problem for every species of ant is how to turn the world around into such a fluid so that they can eat it.


Is there not an autoformatter available? We use linting as part of our Python workflow and it works pretty well along with black. There's really not much linting work: just write your code, run black, and it's good to go.


Rubocop can autoformat the code it complains about.


Not all cops have autoformatters, though, and some formatters can cause breaking changes.


Leaving aside commercial methods or more...shall we say, exotic methods like explosives or elecroshock, bait fishing is generally more effective.

I do both: I trot bait when the river I fish is unsuitable for the fly.


Due to the physical architecture of CPUs/etc., data structures that have "worse" asymptotic performance are often quite a bit faster than those with "better" performance. For example, iterating through a small array to find an item and test for existence is often quite a bit faster than using a hash set for the same operation.


In the same vein, pre-processing your data via sorting on some carefully chosen keys can sometimes alleviate the need for purpose built data structures.

And because of caches, sorting can sometimes beat hashtables.


Which is why I just use the standard library.


Most languages have more than one data structure in their standard library.


Sure, so now instead of just having a source control remote, you’re now looking after a publicly accessible box in the cloud with all the security headaches that brings. Plus you’ve got to manage credentials essentially manually, make sure people have the right access permissions to repos, look after backups, etc.

I worked at a company that started out with a setup like this for the dev team. It felt like a massive burden was lifted when we moved to Github Enterprise. We weren’t using the project management features at all, just the source code hosting stuff.


Great send me a link to your code. I want to browse it real quick and look over it, before I pull it.

Oh wait, git over ssh doesn't show a web view.


This is actually an absolutely awful idea. Every time I used the code browsing and search features I was disappointed by how poorly the search is working. Lots of false positives. Usually fail to find what I'm looking for. When I git clone something and use my text editor's search feature I usually find what I'm looking for on my first try.


It's not perfect, but for a lot of smaller projects it's fine.

Also way easier to send someone a web link to something in a discussion to have them look into it, especially if it's in a different branch then they may have.


> I want to browse it real quick and look over it, before I pull it

What's wrong with fetching it, checking it out in a local branch, and browsing it using your editor? It probably is much easier to browse the code, see it in context and see the diff using your editor compared to the web interface.


I've studied there for an MSc in Computing. It was good. The classes are a bit business-schooly but I got some good support from tutors. Obviously it depends on the individual tutor--the one for my project module wasn't as clear and supportive--but some are really fantastic.


I abandoned the BSc computing. It was rubbish. Java this, java that, java something else. There was one interesting course, a third year course Natural and Artificial Intelligence; nothing else was interesting - bread and water. There was a first year course something along the lines of What is the Web. If you've only ever used ms office, maybe ok, but for an HNer or tech enthusiast a waste of time.


They really need a CS curriculum, the trouble is the current government has pared back funding so I don't think they can afford much right now.


I'm two-thirds of the way through the same course at the moment. To be honest, I've been pretty disappointed with it. I've found the modules to be much more geared towards the management of IT rather than computing and the technical stuff has been largely skimmed over. The only decent module I've done was one of the Cisco CCNA ones and I'm pretty sure you can get the exact same content direct from Cisco for about quarter of the price (and the OU course fee doesn't include the CCNA exam)

I've also had some very disappointing tutors. One in particular was an arrogant arse whose own highest qualification was a BSc yet he was allowed to judge my Masters level assignments


Realistically, how well will someone with a nonspecialist knowledge of biology be able to contribute to these projects?

That statement's not intended to pass judgement; I'd really like to know as it'd be great to contribute to a good cause.


Having helped pathology folks before (with absolutely no pathology knowledge), I would say testing and refactoring. Most of the people involved on these projects are not CS folk, so they write code that "works". Tons of repetitive, poorly tested, and usually inefficient approaches. Obviously you can't help much with domain specifics but a clean code base goes a long way. Or just fixing algorithmic or non-optimal approaches. For instance, fixing roundabout python code to use list comprehension, which is more idiomatic and more performant than most other raw python approaches.


A lot of bioinformatics specialists aren't talented programmers, they are biologists who know how to program as a means to an end.

As a computer scientist you can add a lot of value by contributing to optimization and ease of use.


Not to mention correctness, which is often sorely lacking.


Realistically, contributions from naive computer scientist (naive = no biology training) would be expected to be net negative in the medium term, as the cost of training them to be useful would come at the cost of daily productivity (same argument as Brook's Mythical Man-Month).

I've worked directly in the area covered by computer science and biology through most of my career. One anti-pattern I see that comes up over and over is an expert in CS will come along, see some article in Scientific American or wherever, and build a tool around some clever algorithm that doesn't really solve problems that are useful to scientists. Often the problem is lack of Deep Knowledge of Biology. I've found that the CS people (and physicists) who spend at least a couple years reading up on modern biology are much more effective contributors.


Also have some such experience, and I don't doubt this. On the flip side, watching biologists try to write software is mildly horrifying.


I'm a biologist who writes software, and it is horrifying.


You can contribute some money to pay for the specialist's time: both BioJulia and BioPython (through its supporting foundation) have support / sponsorship links.


Most of bioinformatics is pattern matching text files and performing statistics. You don’t need to know anything about biology beyond a rough hs level to contribute to the tooling, even just polishing existing workflows. Most tools are not written by computer scientists so there is a lot of optimization to be done in most pipelines.

Some initial reading would be to start with the blast algorithim and the sam file specification.


Hey, are you OK with UK passport holders?


yes.


Scala's for-comprehensions (and Haskell's do-notation) help quite a lot as well.


Also F#'s computational expressions.


I'm doing a masters in Computing with them now. I'm enjoying it quite a lot, and it is definitely rigorous (though more on the management side rather than the technical side).


If I may ask, which master are you doing exactly?


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: