3 ms·
A problem is that systems today are too big and complicated for a single person to build and manage. What's the best way to collaborate without loosing the crea
by rlv-dan 9y ago
A problem is that systems today are too big and complicated for a single person to build and manage. What's the best way to collaborate without loosing the creativity needed to push forward making the system better?
- microcolonel 9y ago> What's the best way to collaborate without loosing the creativity needed to push forward making the system better? Hierarchy allows you to organize large composite efforts without relying on collaboration.
- js8 9y agoThis is a great question. I think the answer is, you, as a creative person, need to come up with good abstractions that let you present your idea well-enough without having to do too much work. I have been thinking about abstraction recently (for other reasons, related to learning). To me, abstraction is transformation of the space with the problem to a space where you can easier manipulate the objects the way the problem requires it. For example, we can have image represented as pixels, and we can abstract it into lines and geometric shapes. So the operation, such as moving this triangle from here to there, that would be complicated in pixel representation becomes trivial in the more abstracted, geometric shape representation. Back to the original point. Here are some examples of people invoking abstraction in order to solve some problem: E.F.Codd invented relational model (abstraction) for databases. It let him solve some issues that people struggled with before (how to organize data and build queries) more efficiently. Jeff Dean invented the map-reduce paradigm of distributed computation. The original map-reduce implementation was only about 1000 lines of code. You can also see that abstraction has a cost - it doesn't let you do all possible operations more efficiently, just some that you might be interested in. It's a trade off that you have to make in order to present your idea to the world, to make it work. However, the point is to solve enough with the new abstraction that other people take notice and will naturally help dealing with the complexity of the edge cases. There are many other examples of abstraction from computer science (for example, high-level languages), and even more examples in mathematics. It's how many mathematicians conduct their business - trying to come up with new abstractions (new definitions) that let you handle complicated proofs in a more straightforward way.
- yujbbg666 9y agoBut do we need those big systems? My laptop and phone are powerful enough to generate valuable info from my data sets alone This always on nonsense is not economical Have large data sets? BOINC The only reason the cloud is cool is because corporate says so. ISPs have blocked home services, pay corporate for hosting! Surely we don’t need databases running 24/7 crunching every persons data to find valuable applications in medicine for example? Why can’t our computing look more personalized: I collect my data offline via whatever special gadgets I need ( blood sugar monitor for example) or professional help (doctors, etc) and share as it needed. We don’t need Google Photos operating 24/7 when laptops and phones and a small dedicated backup device can do the same It doesn’t seem all that efficient to have huge data centers around the globe on all day when lower power, less complicated infra could do the work only as needed