Beginning Factor is like programming assembler
Yesterday I was musing over why it took me so much longer to get going with Factor compared to the other languages I've learnt over the years. I came up with this:
Factor's base language is very fundamental and primitive in nature. Programming it is similar to programming with assembler language: you have to keep track of the computation machinery in your head.
Where factor differs from assembler is that careful combination of primitives allows the level of abstraction to be ramped right up. This means that the real productivity action happens not in the base language but in the additional language components built on it in the extensive packaged libraries. Unfortunately until you're familiar with these libraries you're stuck programming at a nut-and-bolts level of abstraction.
Contrast this to your typical applicative language, maybe python or ruby: here the core language includes some useful abstractions which allow you to be relatively productive without having up-front intimate knowledge of the libraries. A couple of hours learning the ideas and syntax is enough to get you up and running and feeling like you're progressing.
So the result is: Factor's initial learning curve is brutally steep (unless maybe if you're already proficient in stack languages). Getting to productivity takes time and study, and unfortunately probably more than you're prepared to give up front if you're just checking out the language.