Live data from Hacker News

Computer Science from the Bottom Up (2013)

bottomupcs.com

131–140 of 161 posts

Re: Computer Science from the Bottom Up (2013)

#131
post #70
post #65

Earlier quoted context omitted.

Maybe I am too old, but from my vantage point, "Computer Science" and "Algorithmic Science" are really two entirely separate fields. Computer Science is exactly what the OP talks about: computers, CPUs, implementation details, hardware, plumbing, etc... One needs actual hardware on the table to work this out. Imperfect hardware, with latencies, clock issues, etc... THAT is true computer science, IMHO, and is very nea…

Computer science is as much about computers as astronomy is about telescopes https://en.wikiquote.org/wiki/Computer_science

Yes and no. The difference with computing the design of the physical hardware influences the design of the programs that are written for it. If the astronomy analogy fully applied then the design of the telescope would influence the design of the universe.

Re: Computer Science from the Bottom Up (2013)

#133
post #70

Earlier quoted context omitted.

Computer science is as much about computers as astronomy is about telescopes https://en.wikiquote.org/wiki/Computer_science

Yes and no. The difference with computing the design of the physical hardware influences the design of the programs that are written for it. If the astronomy analogy fully applied then the design of the telescope would influence the design of the universe.

Telescopes influence what you can see they do not influence the stars.

Re: Computer Science from the Bottom Up (2013)

#134

Earlier quoted context omitted.

The barrier to entry in the FPGA world is tooling and expression. If that hurdle is solved then I'd be all for it. It will usher a new era of electrical engineering design that is as cheap as software desgin making it practical for students to try EVERYTHING on their own. To conduct similar experiments as I have with computer in electronics (as I'd like to do one day so I can get to the same place I am in electronics…

>"The barrier to entry in the FPGA world is tooling and expression" Regarding tooling, I'd say it's not quite the barrier it used to be, now that Project IceStorm exists. http://www.clifford.at/icestorm/

If you're writing VHDL or Verilog then it's for electrical engineers, not humans. The barriers include bad description languages.

You should just have an EDA system. It will take time for pros to use but will be easy for beginners (especially considering that the output of the EDA will usually be what they did)

Re: Computer Science from the Bottom Up (2013)

#135

Earlier quoted context omitted.

The barrier to entry in the FPGA world is tooling and expression. If that hurdle is solved then I'd be all for it. It will usher a new era of electrical engineering design that is as cheap as software desgin making it practical for students to try EVERYTHING on their own. To conduct similar experiments as I have with computer in electronics (as I'd like to do one day so I can get to the same place I am in electronics…

>"The barrier to entry in the FPGA world is tooling and expression" Regarding tooling, I'd say it's not quite the barrier it used to be, now that Project IceStorm exists. http://www.clifford.at/icestorm/

[deleted]

Re: Computer Science from the Bottom Up (2013)

#136
post #111

Earlier quoted context omitted.

That's one portion of computer science. Computer science encompases, in my mind, the study, operation, maintnence, and information that is required to perform computing tasks of the modern era. It's no use to know about algorithms and complexity if you only know how to sort punch cards as that isn't a modern day computing task. A computer sceince background inherently implies software development background. This als…

> An algorithm that takes infinite time Can you give an example of such an algorithm? My understanding of an algorithm is that it must terminate in a finite amount of time, but maybe you have a different definition of an algorithm

> My understanding of an algorithm is that it must terminate in a finite amount of time

Any practical algorithm yes. Any theoretical algorithm no. This is where the will it hault questions come from. Check out Ackerman's function as a good example that we aren't sure if it will terminate. It is still extremely interesting from an algorithms analysis perspective but not from a CS (as I use it) perspective.

Also I'm not specifically talking about algorithms. I'm talking about flaws in O() notation in practice. It is easy to make something look fast in theory when it is far slower in practice.

Re: Computer Science from the Bottom Up (2013)

#137
post #5

I've been rattling this idea around in my head and, although it may sound crazy, I think C is a little high level to start an adult out on. I know many people won't agree with this but all of the people I admire in the world of CS and everyone who is a true scottsman for all intents and purposes loves dipping down to a lower level once and a while. I think the best way to learn about computer science it to program fo…

Interesting in the 70's at high school my first language was CECIL a cut down assembler designed for teaching.

Bear in mind that this class was aged 14 and was the CSE (ie the vocational stream for those leaving at 16)

Re: Computer Science from the Bottom Up (2013)

#138

Earlier quoted context omitted.

> Complexity theory also does not concern itself with uncomputable algorithms, so that point is irrelevant. I do not think this is a correct statement from what I've seen. > As you say, starting off students with abstract theory doesn't help, because they're unlikely to use it and so it won't stick. However, the same argument goes for your "bottom-up" approach; most students of computer science will not ever have to…

But is the point of your course computer science, or computer engineering. I don't think I'm particularly special, but I have taken just the one computer architecture course as an undergrad (and I don't remember much if any of what I learnt), and now I just completed the first sem of my PhD in computer science. I haven't used the information I learnt in that class yet, even though I'm in a partially applied field (se…

Well you're not going to like when I say this.

Cryptography isn't Computer Science. It uses some things that Computer Science developed but it isn't Computer Science. It's applied Math.

If Cryptography is in CS then Nuclear Reactor Operations is in CS. NRO uses computers for monitoring systems and develops algorithms to detect certian... ahm... undesierable states. That doesn't mean we should move a reactor into the CS building at every college near you (although I'd love to work on one eventually, sounds like cool work).

Academics may think that crypto is a CS field but the work involved has absolutly nothing to do with CS. For example, all cryptographic functions can be implemented in hardware. If you are building a cryptographic function in hardware, you're not part of the Electical Engineering department or the Mechanical Engineering department you are still in the Math department because all you're doing is implementing an abstract design.

(Insert unintelegable "get off my lawn" statement)

Re: Computer Science from the Bottom Up (2013)

#139
post #133

Earlier quoted context omitted.

Yes and no. The difference with computing the design of the physical hardware influences the design of the programs that are written for it. If the astronomy analogy fully applied then the design of the telescope would influence the design of the universe.

Telescopes influence what you can see they do not influence the stars.

Computer design can't influance what you see but what you can implement.

If computers still only had 512bytes of memory we'd be writing programs different then today making a trade off of computation speed for ram size.

If CPUs didn't have pipelines then parallelized algorithms wouldn't be as important and I feel that mutli-CPU machines would have taken off to make room for other forms of parallelization.

As the GP says, Galileo's telescope didn't make the universe smaller or larger, it just let him see things in that universe. Nothing changed but what he was holding.

Re: Computer Science from the Bottom Up (2013)

#140
post #5

I've been rattling this idea around in my head and, although it may sound crazy, I think C is a little high level to start an adult out on. I know many people won't agree with this but all of the people I admire in the world of CS and everyone who is a true scottsman for all intents and purposes loves dipping down to a lower level once and a while. I think the best way to learn about computer science it to program fo…

Interesting in the 70's at high school my first language was CECIL a cut down assembler designed for teaching. Bear in mind that this class was aged 14 and was the CSE (ie the vocational stream for those leaving at 16)

Assembly is very simple. That's it's saving grace.
Post reply on HN