HN user

skardan

556 karma
Posts11
Comments15
View on HN

Thanks for submission. Inspiring also outside 8bit and 8bitish art:

  Environment was small enough that you actually could think about it.

  8bit art is mentally and creatively manageable space to work in.
It is not the first time I hear this advice. If you want to be creative, work under constraints.

SEEKING WORK - Europe (Prague) - Remote

Seasoned software developer. Experience with remote work.

How can I help you? build a prototype, MVP or application, review code or design, analyze performance and propose optimizations, write critical and reliable code

- My values: simple solutions, good design, clean and tested code

- I enjoy: hard problems, performance optimization, learning

- Past projects: security, web apps, Linux system development, enterprise ETL and OLTP database apps

- Technologies: Clojure & ClojureScript, Datomic, Oracle PL/SQL, Perl, C/C++, JavaScript, Java, Om, Scheme, Lisp

- Contact: dan.skarda+hn@gmail.com

https://cz.linkedin.com/in/danskarda

SEEKING WORK - Europe (Prague) - Remote

Seasoned software developer. Experience with remote work.

How can I help you? build a prototype, MVP or application, review code or design, analyze performance and propose optimizations, write critical and reliable code

- My values: simple solutions, good design, clean and tested code

- I enjoy: hard problems, performance optimization, learning

- Past projects: security, web apps, Linux system development, enterprise ETL and OLTP database apps

- Technologies: Clojure & ClojureScript, Datomic, Oracle PL/SQL, Perl, C/C++, JavaScript, Java, Om, Scheme, Lisp

- Contact: dan.skarda+hn@gmail.com

https://cz.linkedin.com/in/danskarda

SEEKING WORK - Europe (Prague) - Remote

Seasoned software developer (teamleader and manager). Experience with remote work.

How can I help you? build a prototype, MVP or application, review code or design, analyze performance and propose optimizations, write critical and reliable code

- My values: simple solutions, good design, clean and tested code

- I enjoy: hard problems, performance optimization, learning

- Past projects: security, web apps, Linux system development, enterprise ETL and OLTP database apps

- Technologies: Clojure & ClojureScript, Datomic, Oracle PL/SQL, Perl, C/C++, JavaScript, Java, Om, Scheme, Lisp

- Contact: dan.skarda+hn@gmail.com

https://cz.linkedin.com/in/danskarda

SEEKING WORK - Europe (Prague) - Remote

Seasoned software developer and team lead. Experience with remote work (including US time zones).

How can I help you? build a prototype, MVP or application; write critical and reliable code; analyse performance and propose optimizations; review your code, design or architecture.

- My values: simple solutions, good design, clean and tested code

- I enjoy: hard problems, performance optimization, learning

- Past projects: security, web apps, Linux system development, enterprise ETL and OLTP database apps

- Technologies: Clojure, ClojureScript, Datomic, Oracle PL/SQL, Perl, C/C++, JavaScript, Java, Om, Scheme, Lisp

- Contact: dan.skarda@gmail.com https://cz.linkedin.com/in/skardan

SEEKING WORK - REMOTE or EU

We are two SW developers with a passion for our craft, performance and algorithms. Martin has a PhD in data structures, Dan has a plenty of experience from large system integration projects.

How can we help your business? We can bring the most value if we focus together on performance and reliability. Better performance means lower costs of HW, faster application for your users or you to get that important report in minutes and not in hours or even days.

We can also build an MVP or application, help you with architecture, review both code and design, find bottlenecks and propose optimisations.

Our skills: Linux, Unix, C, C++, Oracle PL/SQL, Scheme, Perl, JS, Clojure and ClojureScript. Technologies we would like to use more: Clojure, React.js and Om, Erlang or data science.

You can hire us either individually or as a team. We have already worked together remotely for a San Jose company (C, kernel and userspace for a Linux based device).

http://cz.linkedin.com/in/skardan http://cz.linkedin.com/in/martinsenft

Contact me at dan.skarda+hn@gmail.com

It is sad nobody mentions book The Humane Interface by Jeff Raskin.

Raskin would say, that this is not a question of red or green. It is a question of habit. If user deletes enough items, you will train him to press "Yes" button and not to think about the question. It will be his habit. Uninterruptible sequence.

Anybody deleted his important files just because he is "trained" to press sequence F8 - Enter in his favourite file manager?

Raskin recommends to provide undo. User content is sacred and should not be lost. You can also try to randomize the dialog. User will stop the sequence and think what he is doing. But if user performs the delete operation often, he will be greatly annoyed.

Read it. It is a great book with many valuable gems. http://amzn.com/0201379376

You use other senses than vision. When planning you engage with your tactile senses and spatial sense. Probably there is also some "rite" factor which increases your commitment. You have to get up from your chair, come to lego board and change the bricks :)

There is an inspiring book by Pragmatic Programmers - Pragmatic thinking and learning. It recommends engaging with other senses to improve your cognitive / creative abilities. For example they recommend using LEGO bricks to "materialize" your SW architecture or processes.

I agree the coolness factor is great :) I love the idea synchronization. Great job! (even if it was made just to attract an audience).

I think there is another great example of value based programming we use every day even on small scale: unix pipes.

cat file | grep .... | wc

There are no complex protocols involved between cat, grep and wc - just passing around the value (now I am not talking about mutable files, directories etc).

I have seen very few systems which are as simple yet as flexible and versatile. Conventional wisdom says it is because unix is set of small utilities where each program does just one thing right. After watching the talk we should note that these utilities pass around text values.

If you want to build something as powerful and flexible as unix command line, you should think about value of decomposition as well as value of values :)

> The colloquial definition of a spreadsheet app in about 100% of the world at this time is the ability to do calcs.

For me Grid got right the essence how and why some people use spreadsheet for non-calc tasks. If people write long text, they start text editor. If they want to add more "structure", they do not implement new DB application, but they start spreadsheet app.

Especially in corporate world: if manager wants to track tasks (issues, progress of documents) - he starts Excel and uses it like the Grid. The most complex Excel I have seen so far was used for tracking wedding - tasks, guests, deadlines etc ;)

There are many ways how people use general concept of spreadsheet. Some might involve complex calculations, some people use it only as a free-form grid. My guess is that the ratio is 1:10 (in favor of free-form grid). That is why I think BinaryThumb hit the sweet spot and will be successful even if they do not implement calculations at all.

Read the masters 14 years ago

There is an interesting question. Does the advice "read the masters" also applies to teaching?

My teacher at university pointed me to Moore's method named by great american mathematician Robert Lee Moore. Moore selected students without previous knowledge of the subject and let them "invent" the subject - definition, theorems, proofs.

http://en.wikipedia.org/wiki/Robert_Lee_Moore#Unusual_teache...

So great teachers do not "teach masters" but rather teach to "think like masters". If you know how to think, "reading the master" feels more like a dialogue.

I also recommend Rich's talk called hammock-driven development

http://blip.tv/clojure/hammock-driven-development-4475586

http://www.popscreen.com/v/5WwVV/Hammockdriven-Development

or his recent talks about reducers or Datomic.

For me the talk about reducers was especially jaw-dropping experience because it was about something simple we all do every day - crunching data in collections (how many times you have implemented lists library? :). Yet after decades of collection traversing, there is a still a place for fresh approach, if you are willing to thing hard.

This is the difference between blindly following known programming patterns (cargo-cult programming I would say) and really thinking about a design.