• You are not logged in.

How about this layout??

  • Started by nawfal
  • 77 Replies:
  • Reputation: 0
  • Registered: 02-Nov-2010
  • Posts: 38
pinkyache said:

I think once you know what you want to measure and optimise for - with reference to layouts - picking a programming language should be easier.  You pick a language that lends well to the problem.  Speed isn't always everything.

yeah, but concerning keyboards, speed alone matters ( or it matters the most) right. there's always room for learning another one for general purpose.

pinkyache said:

Did you try the layout on carpalx?  Perhaps his methodology is at odds with your own.  If not you might be able to adapt the available source code for your own needs.

Has anyone else run your layout against their metrics, or care to comment upon it as it stands?

@ both lethalrocks and pinkyache, how is this done? I've downloaded a 16MB zip from his site. but i dunno how to evaluate mine with that.

Offline
  • 0
  • Reputation: 0
  • Registered: 04-Nov-2009
  • Posts: 23

Actually concerning keyboards, speed doesn't matter. Ergonomics is what matter. You can be fast in any keyboard, it doesn't matter if it's QWERTY, Dvorak, Colemak, Alphabetical, or the worst layout in the world. As long as you train in that layout, you will gain speed. Unless you aren't speaking about keyboards as in keyboard layouts haha.

Offline
  • 0
  • Reputation: 0
  • Registered: 02-Nov-2010
  • Posts: 38

@ ^, You have got me wrong. We were talking of programming languages and their executional speeds. It was about C, D, Go and likes. Not about Qwertys or Dvoraks.

Offline
  • 0
  • Reputation: 7
  • Registered: 21-Apr-2010
  • Posts: 818
nawfal said:

yeah, but concerning keyboards, speed alone matters ( or it matters the most) right. there's always room for learning another one for general purpose.

Speed might be important if you were doing some heavy number crunching.  But I wouldn't get too hung up on it.  I think I'd choose a high level language, even if it did take a little longer (to run the program).

There are some layout analysers out there on the web, if you don't want to try carpalx.  They could be black boxes, or arrive at results that may be at odds with what you believe are important factors for discerning what makes a good layout.

Last edited by pinkyache (12-Nov-2010 18:15:26)

--
Physicians deafen our ears with the Honorificabilitudinitatibus of their heavenly Panacaea, their sovereign Guiacum.

Offline
  • 0
  • Reputation: 0
  • Registered: 02-Nov-2010
  • Posts: 38

@pinkyache, it's indeed number crunching. There are almost infinite layouts and to possibly do math among all of them would take a long long time even for supercomputers. C like speed is important here. The difference it's gonna make is huge in the end.

Which are those sites to analyze custom layouts? I found one at codesharp.co.uk/dovrak. Readings of some parameters weren't correct.

Offline
  • 0
  • Reputation: 7
  • Registered: 21-Apr-2010
  • Posts: 818

How about this one:
http://patorjk.com/keyboard-layout-analyzer/

Couldn't find an explanation as to the way it works.

If you were tackling the problem - I doubt you'd enumerate through all the possible key permutations.

I doubt the problem is in any way trivial:
https://en.wikipedia.org/wiki/Traveling … an_problem

Last edited by pinkyache (13-Nov-2010 05:37:10)

--
Physicians deafen our ears with the Honorificabilitudinitatibus of their heavenly Panacaea, their sovereign Guiacum.

Offline
  • 0
  • Reputation: 0
  • Registered: 02-Nov-2010
  • Posts: 38

Hmmm thanks anyway, patorjk doesn't give a detailed report though.

It can be (just) possible by greatly reducing the possible combinations giving some constraints (you don't expect E to be on pinky right). Still its a tough task ahead, admitted.

Offline
  • 0
  • Reputation: 7
  • Registered: 21-Apr-2010
  • Posts: 818

This thread is related:
https://forum.colemak.com/viewtopic.php?id=397

Lot's of great info in this forum.

--
Physicians deafen our ears with the Honorificabilitudinitatibus of their heavenly Panacaea, their sovereign Guiacum.

Offline
  • 0
  • Reputation: 0
  • Registered: 02-Nov-2010
  • Posts: 38

thanks pinkyache. i'd gone thru this one before though.

Offline
  • 0
  • Reputation: 0
  • Registered: 03-Jul-2009
  • Posts: 189

As a learning language I'd recommend Python.  Don't be too concerned about speed while learning, because your first programs will be fast enough. 

If you want to learn a language for fast executables, then I'd recommend OCaml: it is in the same league as C.  The Great Language Shootout could give you some ideas about speeds of different languages: https://shootout.alioth.debian.org/

Shai recommends D.  I've read nice reviews about it, but I've never used it, so I don't know.  Last time I checked, it seemed to have too little a community, though, and scant tools support: not nice things for a newbie.

Before or later, you'll have to learn C, but just to understand the programming interface of different operating systems better.  Nowadays there are way better alternative to C for fast executables.

Avoid C++ at all costs, it's just not worth the hassle.  Take my word for it, I use it every day.

Your layout is interesting, and I think the T-H roll trick is a smart finding.  Thanks for sharing.

Dvorak typist here.  Please take my comments with a grain of salt.

Offline
  • 0
  • Reputation: 0
  • Registered: 02-Nov-2010
  • Posts: 38

@spremino, I'd gone thru syntaxes of Python, and it seemed more difficult than Vb.net to me. Mind you, I'm used to VB and like the clear written style of VB. I would not, of course, start learning programming with complex D language. Your OCaml looks impressive as well. But still lags behind speed of C and C++ which's gonna make huge difference in the end. D to me looks the most impressive. I would deal with D only later.

And thanks for the appreciation on layout.

Offline
  • 0
  • Reputation: 0
  • Registered: 03-Jul-2009
  • Posts: 189

@nawfal  Do not let Python's different syntax discourage you.  Python's syntax is different from Visual Basic's syntax, but still it is designed for learning.  Python's syntax is being widely praised for its clarity.  And let me alert you than a language is much more than its syntax.  Some programming languages allow easier mapping of your ideas to code, in a concise manner.  That's what we programmer call the "expressiveness" of a language.  Python is more expressive than VB.NET.  Moreover:
-  Python has been ported to both the Java and .NET platform, thus allowing you to easily switch platform when needed.
- You should know at least one scripting language for quick scripts to be an effective programmer.  Python is a great choice for this (I do not recommend Ruby because it is quirkier).

Regarding OCaml's speed, do not be fooled by speed not on par with C/C++.  As programs grow more complex than simple benchmark code, OCaml lets you write fast code (computer time) much faster (human time) than C/C++, and such code is very unlikely to crash on you and prompting for tedious debugging sessions.  If you value your time, then use OCaml; if you value computer time, use C (but then why don't you jump on raw Assembly? No programming language can beat raw machine code).  Your own time is yours, spend it as you wish.

Have a nice day.

Dvorak typist here.  Please take my comments with a grain of salt.

Offline
  • 0
  • Reputation: 0
  • Registered: 05-Jan-2010
  • Posts: 91
spremino said:

Python's syntax is being widely praised for its clarity.

questions = [questions for sections in surveys.surveysections_set.all() for questions in sections.surveyquestions_set.all() if questions.question.type == Question.FREE_TEXT]
timestamp = time.mktime((datetime.datetime.now() + datetime.timedelta(hours=1)).timetuple()).split('.')[0]

Clarity? I beg to differ. For simple code, probably, but not when you use Python to it's full power.

Offline
  • 0
  • Reputation: 0
  • Registered: 02-Nov-2010
  • Posts: 38

@spremino, Regarding choice between .net and Python, I think it boils down to being mere personal choices. Being a novice I feel, VB.net is the way to start. No programmer learns just one language his whole career. I'll get to know more about languages when i get into thick of it. I feel at great ease when starting with VB.net, may be for its resemblance with old VB, be it syntaxes or GUI.

I was talking about executional speeds. Let me take anytime to write. This keyboard designing is highly dependent on raw executional speeds. But doing it in machine code seems too much asking for, to me :(

Offline
  • 0
  • Shai
  • Administrator
  • Reputation: 36
  • Registered: 11-Dec-2005
  • Posts: 423

I would highly recommend the Ruby for people starting out with programming. It would also be my language of choice as a general purpose language and for web development.

Unfortunately Ruby is not well suited for CPU crunching tasks, that's why I suggested D for that task.

spermino, I personally find Ruby to be the least quirky language I've worked with.

I think Python made some usability and elegance sacrifices in order to achieve better performance. Because Ruby didn't make these sacrifices I think it's a more elegant, consistent, and easy to learn language.

e.g. immutable objects in Python to be very unintuitive. I don't think that a high level language should make things more complicated than C, e.g. changing "Hello world" to "Hello World"

Python: x = "Hello world"; x = x[:6] + x[6].upper() + x[7:]
Ruby: x = "Hello world"; x[6].upcase!

Python has some unexpected syntax surprises, e.g.:

x = (2,2)  # => x is a tuple
x = (2) # => x is a integer (you need a trailing comma)

In Python, you have to think whether things are mutable or immutable, whether they are a proper object or a built-in type, etc.

In Ruby everything is an object, it makes everything easier, a lot more consistent and logical, and explorable and chainable. e.g.:
e.g. you can type:

5.methods.sort.reverse.grep(/to_/).join(', ')

And it will give you all the methods available on the number 5 (which is an object), alphabetically sorted backwards, that contain "to_" in them, joined by commas.

In Python, built-in types aren't proper objects for performance reasons.

Both languages have ample documentation, and a thriving community and ecosystem.

Python is a fine language and has better performance, and would be my second choice I'd recommend for a beginner.

Offline
  • 0
  • Reputation: 0
  • Registered: 03-Jul-2009
  • Posts: 189
Shai said:

spremino, I personally find Ruby to be the least quirky language I've worked with.

Try Scheme, then.  IMO, neither Python nor Ruby can hold a candle to Scheme in simplicity, consistency, easy of learning and power.  However, the former have much larger communities, therefore I'm more inclined to recommend one of them - that is Python - to a newbie looking for a quicker path: more support available.

If the original poster wished to bite the bullet. then the best way to learn programming would be studying "Structure and Interpretation of Computer Programs" (https://mitpress.mit.edu/sicp/full-text/book/book.html) along with a running instance of PLT Racket (former PLT Scheme, now at https://racket-lang.org/).

Shai said:

I think Python made some usability and elegance sacrifices in order to achieve better performance. Because Ruby didn't make these sacrifices I think it's a more elegant, consistent, and easy to learn language.

OTOH, Python made the best compromise regarding learning: "there is only one way to do it".  Python explicitly targets beginners, and IMO it succeeds.  Many experienced programmers have stated that Python code looks as pseudo-code, thus making it easier to read.

Shai said:

In Ruby everything is an object, it makes everything easier, a lot more consistent and logical, and explorable and chainable.

And confusing, IMO.  As an experienced programmer who knows a bunch of programming languages, I sometimes have an hard time reading Ruby code: because of Ruby's pervasive object-orientedness, Rubyists cram everything into such approach, often using an idiom for what it does instead of what it means.

I understand that both your view and mine are defendable, though.

EDIT: For those interested in evaluating Scheme, I recommend sticking to the R5RS standard + R5RS-based SRFIs + extensions made available by your implementation of choice, since the most recent standard - R6RS - has been somewhat controversial in being approved and a sizeable part of the Scheme community thinks it complicates matters unnecessarily.

Last edited by spremino (16-Nov-2010 22:28:01)

Dvorak typist here.  Please take my comments with a grain of salt.

Offline
  • 0
  • Reputation: 0
  • Registered: 02-Nov-2010
  • Posts: 38

Something i got from a forum:

1) let's say it's object oriented programmming. Then I suggest a "pure" OO language. that excludes C, D, Ocaml, Common Lisp, Fortran, Cobol, but includes languages like Ruby, Smalltalk, Self, Beta, Io

2) let's say it's to understand how machines work. Than the first choice is Assembler, probably C, C++ or D next

3) let us assume you are looking for languages with largest set of libraries. Then C#, the .NET languages, Java, and maybe Smalltalk would be a good idea

4) if you like to learn functional programming. You have to choose languages like Haskell, Ocaml, ML, Qi, maybe Scheme

5) if you like "practical languages" then you might like to check out Common Lisp, Scheme, the diverse .NET languages Ocaml

6) if you want speed than you probablly want to learn Assembler, C, C++, or OCAML

7) if you like languages which cover more "approaches" then you like to learn Scheme, Common Lisp, Ocaml, Mozart/Oz

8) if you want to formulate your goals and let the machine find it's way to it then you like to learn Prolog

9) if you like concise languages than Forth, and derivates will come in handy.

10) if you like to do much text manipulation you like to learn something like Perl, Tcl/Tk, Ruby, Python the so called scripting languages mainly

11) if you like to have your language on as many OSes as possible then, C, Smalltalk, Java and many scripting languages

12) if you want good tools support than the .NET langauges, Java, Smalltalk and the IDES of some Commmon Lisps will be good choices

Offline
  • 0
  • Reputation: 0
  • Registered: 02-Nov-2010
  • Posts: 38

from here, http://josako.freeservers.com/tech/langreview/

If you intend to learn web programming, start by putting extra effort into learning HTML in detail. HTML is the framework on which all web programming is built on, and understanding it is crucial. The next step I would recommend would be to learn some simple Javascript client side programming; this can be done locally, and thus does not require a full web server. After this, I would learn some server side Javascript, and perhaps PHP as well. After this, learn about XML, so you can use specialty document languages. If you mean to use CGI scripting, you should then learn either Perl or Python; if you mean to write applets, then you should learn Java instead. For professional web design, you will probably need to learn about development frameworks such as Zope or Websphere, and possibly Enterprise Java Beans as well.

For general applications programming, I would recommend starting with either Python or Ruby, as they are both easy to learn, and are interpreted languages, which makes it easier to try out different things without writing a full program. If you want to learn Windows programming specifically, I would then go to Visual Basic, followed by C#. Otherwise, I would recommend C, then Perl, then either C++ or Java.

If you want to understand programming on a deep level, or intend to go into an academic career, I would start with Scheme, then learn Smalltalk, then an assembly language, then pick up as for applications programming.

For systems programming, follow the same approach as for applications programming, but drop Perl in favor of x86 assembly language.

For Unix or Linux system administration, learn Bourne-Again shell scripting, the Perl, then C.

For Windows system administration, learn Visual Basic for Scripting (not the same as VBScript) and DOS batch programming, then Visual Basic.

For database programming or administration, learn Oracle and PL/SQL, or SQL Server and Visual Basic. Java may be useful eventually, and Prolog may be of some side interest for understanding the connection between logic programing and the relational model. Rather than focusing on languages, you should delve into the details of the relational algebra and relational calculus.

For scientific programming, learn Python, then either Fortran 90 (for physics or inorganic chemistry) or Perl (for biology or organic chemistry), then C. You will also want to learn certain mathematical, statistical and simulation tools such as MATLAB, Mathematica, SPS and GPSS; which you will need will depend on the science and specialization you are studying. You may eventually need to learn either Common Lisp or Ada, but they are not high priorities

Offline
  • 0
  • Reputation: 0
  • Registered: 03-Jul-2009
  • Posts: 189

This advice is obsolete.

Dvorak typist here.  Please take my comments with a grain of salt.

Offline
  • 0
  • Reputation: 0
  • Registered: 02-Nov-2010
  • Posts: 38

@spremino

i felt it too.. the first post is rather informative.

Offline
  • 0
  • Reputation: 0
  • Registered: 02-Nov-2010
  • Posts: 38

Few things I've come across internet after few days of extensive reading. I'm a novice and anything I say here from my very limited understanding of the concept of programming language doesn't hold water. I would like to hear from you people what you think of these:

1. VB.net doesn't support functional programming. I dunno how crucial that's gonna be.

2. I've repeatedly read in various forums people saying "Python is simpler to write but Ruby is simpler to use". I dunno what really this means..

3. @Shai, I too find Ruby to be simpler than Python (accordingly a lot slower too). That's the first hand information I could infer.

4. @ Spremino, I now after reading a lot on languages and going through syntaxes of various languages, I realise syntax doesn't have any real importance. Of course, its the easiness of implementing our ideas concisely what really mattes the most.

5. Going through a lot of languages recommended in various forums, I found a slew of them to be very easy. And accordingly confusing as to choose with which to start :). Apart from Python, Ruby, VB.net and others being talked about here, Smalltalk, Io, Ada, Haskell, Scheme, Common lisp, Object Pascal on Delphi, Ocaml, Rebol, Lua, Oz, Euphoria etc seems to be more or less equally and very much easy. Of the lot, .net, Ruby, Io, Smalltalk, Object Pascal and Lua seems particularly easy to me.

6. @spremino, you feel Scheme is really easy. Personally I don't like the bracketed style syntax of Scheme (something which is silly), but most importantly the prefix style syntax of the Lisp languages is what I really don't find attractive about them. Infix style is a bit more pleasing on eyes and less confusing. I would say Common Lisp is a teeny bit easier than scheme as well. Haskell is one another functional language which has a very concise manner of presentation than Scheme, but sometimes syntaxes are more complex (noticeably with string functions).

7. Object Pascal(Delphi) is the easiest programming out there which I feel is not even a subjective thing :) I've found languages getting complex when object oriented principles are implemented, but Object Pascal handles them remarkably well as far as ease is concerned. I would like to see comments on this :)

8. It's amazing to see Smalltalk developed 30 yrs back is way simple. I love it personally. Will see if I can master it in future.

9. @Spremino, your Ocaml is really interesting. This high level language has the perfect mix of speed and ease of use, I feel. I didn't find it to be as easy as many languages I mentioned here, say for instance vis-a-vis a comparable language, Common Lisp, but the speed is compelling. Ocaml would be in my secondary choice of learning a new language if I've the time and luxury to.

10. I would like to know which are the languages (or their implementations) that have default gui widgets like we have in VB and VB.net? I think Rebol and some implementation of Smalltalk has gui toolkit by default (or am I wrong?), but how do these fare against as that in VB? I ask because I have personally seen only VB.

Offline
  • 0
  • Reputation: 0
  • Registered: 05-Jan-2010
  • Posts: 91

Wow, you're way too analytic about this.

1. Not at all.  As soon as you've studied programming a few months you might want to try out functional programming.  Or, if you like the idea of functional programming, start out there.  It really doesn't matter.

2. It means, try writing a few statements in both, and pick the one you liked the most.  Or you could just flip a coin.

4. There are a few different approaches to syntax, but with the exception of the Lisp family, most of them boils down to the same thing.  Block structures.  Either with braces, keywords or anything else you can think of.

5. You said you liked VB.net, so I don't see the problem in beginning with that.

6. Understanding Lisp is something really amazing and every programmer should experience that once.  But I suspect you have more than 20 years to live, so there's really no hurry.  As to Haskell, it's pretty cool but expect to scratch your head multiple times over those god damn monads.

7. Okay, then try Object Pascal out as soon as you get to OOP.

8. Yes, that is a good realisation.  You have a lot of time and you don't need to focus on one language for the rest of your life.

9. Once you have the basics in one functional language, you'll grasp the others quite quickly.  Like OCaml.

My point being: Just pick whatever you feel like.  It's not like you're committing your entire life to something.  If you start feeling uneasy about the language you know, migrate to another one.  The differences aren't /that/ big.

Most programmers pick a language once, and then after one year of usage that is their whole world.  Comparisons between programming languages and religion have been done at more than one occasion.  That is why you really can't listen to another programmer when asking for advice as to what language to use, because they will always promote “their” language with zeal.  You simply have to experience the languages by yourself.

Also, there is the saying, “When all you have is a hammer, pretty much everything starts to look like a nail.”  Many programmers are trying to bend the problem around their language, instead of choosing the proper language for the problem.

Last edited by kqr (20-Nov-2010 12:15:23)
Offline
  • 0
  • Reputation: 0
  • Registered: 03-Jul-2009
  • Posts: 189
nawfal said:

1. VB.net doesn't support functional programming. I dunno how crucial that's gonna be.

Very crucial.  Languages which lack support for functional programming force you to write a lot of boiler-plate code for certain kinds of problems.

nawfal said:

2. I've repeatedly read in various forums people saying "Python is simpler to write but Ruby is simpler to use". I dunno what really this means..

Neither I do.  Maybe it means that Ruby is flexible enough to let you express ideas in seemingly intuitive ways.  I don't share this opinion: I think Ruby flexibility allows you to express your ideas using the wrong language construct.  As someone has stated - not relating to Ruby - novice programmers use a language's constructs for what such constructs do instead of for what they *mean*.  That's the reason - as I have already stated - I find Ruby code difficult to read.

Python, OTOH, is more of a framework about designing programs, thus you are less likely to acquire bad programming practices.

nawfal said:

4. @ Spremino, I now after reading a lot on languages and going through syntaxes of various languages, I realise syntax doesn't have any real importance.

It has.  Lisp's little syntax - or lack thereof - is what enables the code-as-data paradigm.  Moreover, syntax-heavy languages can be harder to read to those who don't practice them daily.
 

nawfal said:

6. @spremino, you feel Scheme is really easy. Personally I don't like the bracketed style syntax of Scheme (something which is silly),

It's just a matter of familiarity.  My experience has been that after a few days programming in Lisp, reading an Algol-derived language (Java, C, etc.) is fatiguing.

nawfal said:

but most importantly the prefix style syntax of the Lisp languages is what I really don't find attractive about them. Infix style is a bit more pleasing on eyes and less confusing.

Wrong.  All languages have mostly prefix-style syntax, apart from arithmetic operators.  Moreover, it has been shown that Lisp code has less punctuation characters than Java, for instance.

And, would you like to know something?  The designer of Lisp was going to give Lisp infix-style syntax (called M-expressions), but it ended up that programmers preferred the prefix-style one (called S-expressions), because they understood the power such syntax unleashed, and didn't want to give it up.

nawfal said:

I would say Common Lisp is a teeny bit easier than scheme as well.

Unlikely.  Common Lisp has a lot of baggage, and it is hairy, has a language for real world

nawfal said:

Haskell is one another functional language which has a very concise manner of presentation than Scheme, but sometimes syntaxes are more complex (noticeably with string functions).

You forget the monad madness and static typing.  Do not compare code written by the masters with code a beginner can write (and handle).

nawfal said:

7. Object Pascal(Delphi) is the easiest programming out there which I feel is not even a subjective thing :) I've found languages getting complex when object oriented principles are implemented, but Object Pascal handles them remarkably well as far as ease is concerned. I would like to see comments on this :)

I have been programming Object Pascal (Delphi) in a commercial setting for three years.  When you are starting out, it seems very nice.  However, as your skills progress, you hit a wall.

If you are after pure object-oriented programming, I would say choose:
- Smalltalk: if you prefer dynamic typing (I do);
- Eiffel: if you prefer static typing (Eiffel is worth learning anyway because of Design by Contract).

Everything else simply is not comparable, no matter how fashionable.

Nawfal, please understand that as an experienced programmer, I have a much broader view than a beginner about what the easiness of learning of a language is.  When you are just looking at syntax, my advice about Python came after I considered: stability, portability, baggage, community, available libraries, wide choice of user-friendly and feature-rich IDEs,

Dvorak typist here.  Please take my comments with a grain of salt.

Offline
  • 0
  • Reputation: 0
  • Registered: 03-Jul-2009
  • Posts: 189

Talking about experience... C/C++ development is way slower because compilers are slow (by necessity, because the languages themselves do not allow them to be quicker), and consequently your develop/compile/test cycle is slowed down.  Of course, code benchmarks do not show this.

Dvorak typist here.  Please take my comments with a grain of salt.

Offline
  • 0
  • Reputation: 0
  • Registered: 08-Mar-2008
  • Posts: 303
nawfal said:

Q    P    C    F    ,     .    M    U    Y    V
A    N    S    T    H    L    R    E    I    O
J     B    G    D              W    Z    K   x

This layout looks like one of the better ones I've seen and you seem to have really done your research, but I don't think it's as good as Colemak or the MTGAP-series. The TH digraph is a unique solution and it has its advantages but I don't think it's very elegant. Touch typing works a certain way; why should you deviate from that just for this one digraph? I'd rather use a keyboard that keeps things simple.

The TH digraph makes this layout difficult to analyze by computer, so I'll do what I can by hand.

* You do a reasonably good job of keeping same finger usage to a minimum.
* The Z underneath E seems like a waste of a position that, while not especially easy to type, still deserves something more common. I would probably want to switch the K and the Z, except that the KE/EK digraphs will increase same finger.
*

nawfal said:

Many of the layouts out here have been designed for a standard keyboard which is excruciatingly awful in my opinion. I meant the standard keyboard not your layouts. I say this because an ergonomic keyboard will have slightly different design principles.

This is a fairly minor point. Most keyboards are almost exactly as good on either. The biggest difference is probably the QWERTY 'b' key, which is a lot easier to reach on a good ergonomic keyboard than on standard. I designed MTGAP 2.0 (and most of the other versions) for standard keyboard but they are nearly as good on an ergonomic keyboard.

nawfal said:

As a person who has spared quite a lot of time and effort on this topic, I believe I really understand the ins and outs (as you all do) of this art of keyboard of keyboard designing, say for instance why there occur difference of opinion on technical specs of the same layout when evaluated by different people (‘coz of the corpus being nonlinear) or why different people end up in different layouts( the algorithm revolving around the highly subjective cost, penalty etc being different and also ‘coz of the limitation of our computers to calculate all the possible layouts); and I do feel there's a way to solve this, more or less.

I'd like to hear your explanation for the bolded part.

I'm glad to see another smart keyboard designer and I hope you come up with some good ideas.

Offline
  • 0