I thought this project was really cool when I first came across it, but there was one thing that really offended me about it and made me refuse to ever use it:
> How to Use It
> =============
> Use the source, Luke ;)
> Please note that impress.js was created for developers. Some basic knowledge of html, css and javascript is a prerequisite to install and use its features.
So, in other words, "please, reverse engineer my work because I'm too lazy to document my code."
Sure, they've put in a lot of comments, but there's still no clearly defined interfaces or guides for use. It's all comments like 'delegated handler for clicking on step elements' and big ascii art of yoda.
Documentation is not just for _newbs_. It's an important part of making a third party library. If you want other developers to use your code, then make it easy to use. To not do so is incredibly user-hostile, and it's not going to get you anywhere.
Could you imagine if people had attitudes like this in other fields of engineering? "Here's your new car." "Thanks, how do I change a tire or put in gas? Does it have a manual?" "Manual? Just read the schematics. If you know anything about mechanical engineering or combustion, you should be able to figure it out!"
Re:Impress.js v0.6.0
by emidln on Sunday July 03, 2016 @04:10PM
(#12027414)
> Could you imagine if people had attitudes like this in other fields of engineering? "Here's your new car." "Thanks, how do I change a tire or put in gas? Does it have a manual?" "Manual? Just read the schematics. If you know anything about mechanical engineering or combustion, you should be able to figure it out!"
This is basically giving away the schematics to a car, not a car itself. If someone gives you the schematics for a car, you still need to know a fair bit about reading those schematics (and a fair bit about a lot of other stuff) to work out exactly how to build the car.
Impress.js isn't being delivered as a complete product, but it is a free project. I don't work with Impress.js except as a casual user, but as I understand it "Pull Requests Accepted", and if they aren't, fork Impress.js into Impress.js-with-docs and add them if you feel you must. The entitlement to someone else's time is tiring.
Re:Impress.js v0.6.0
by michaelmior on Sunday July 03, 2016 @03:09PM
(#12027214)
I understand the frustration but your analogy broke down for me when you added the "idiot." I interpreted this to mean that the developer chose not to put additional effort into documentation. While I understand this can be frustrating, Impress.js is still a pretty cool project and I'd rather it exist without documentation than not exist at all.
Re:Impress.js v0.6.0
by darkwinx on Sunday July 03, 2016 @04:06PM
(#12027401)
I've checked the repository.
It has DOCUMENTATION.md in there (I guess some contributors take the initiative).
The sample source code it self (the link with "Use the source" text) also has comment that explain how to use certain feature.
I think the need to replace the content of "How to Use It" section since they do have real documentation.
You're right. I didn't notice they had added that file. It looks like pretty comprehensive documentation too. I retract all my previous statements. They just need to update their README.
I remember it being pretty amazing back then. Still pretty amazing to me now, though I stopped learning new things in CSS around the same time (somewhat thanks to Bootstrap).
Re:Impress.js v0.6.0
by greenspot on Sunday July 03, 2016 @12:30PM
(#12026567)
Got this on an iPhone 6 with Mobile Safari:
'Your browser doesn't support the features required by impress.js, so you are presented with a simplified version of this presentation.
For the best experience please use the latest Chrome, Safari or Firefox browser.'
Wondering which features they are using not available on Mobile Safari.
Re:Impress.js v0.6.0
by mashlol on Sunday July 03, 2016 @12:56PM
(#12026673)
I also got this message on a Nexus 5 running mobile Chrome, which as far as I understand it has nearly the same featureset as desktop chrome. Perhaps it's not actually doing feature checking, it's just guessing based off the user agent string. Or perhaps it would present horribly on mobile anyway.
Re:Impress.js v0.6.0
by jccalhoun on Sunday July 03, 2016 @05:13PM
(#12027650)
I tried it on mobile firefox on my 2015 moto G and got the same message. Then I checked the "request desktop site" option in browser and it worked but the transitions were slow.
Re:Impress.js v0.6.0
by greenspot on Sunday July 03, 2016 @01:25PM
(#12026804)
...hm, I know that CSS 3D transitions in particluar run extremely well on an iPhone 6, heck even a 5 should manage them well. The hardware is def good enough and these transitions are also hardware accelerated on an iPhone.
Not sure on the classList and dataset APIs and if there weren't any other option to implement the required functionality.
"It's a presentation framework based on the power of CSS3 transforms and transitions in modern browsers and inspired by the idea behind prezi.com. http://impress.github.io/impress.js"
> How to Use It
> =============
> Use the source, Luke ;)
> Please note that impress.js was created for developers. Some basic knowledge of html, css and javascript is a prerequisite to install and use its features.
So, in other words, "please, reverse engineer my work because I'm too lazy to document my code."
Sure, they've put in a lot of comments, but there's still no clearly defined interfaces or guides for use. It's all comments like 'delegated handler for clicking on step elements' and big ascii art of yoda.
Documentation is not just for _newbs_. It's an important part of making a third party library. If you want other developers to use your code, then make it easy to use. To not do so is incredibly user-hostile, and it's not going to get you anywhere.
Could you imagine if people had attitudes like this in other fields of engineering? "Here's your new car." "Thanks, how do I change a tire or put in gas? Does it have a manual?" "Manual? Just read the schematics. If you know anything about mechanical engineering or combustion, you should be able to figure it out!"
This is basically giving away the schematics to a car, not a car itself. If someone gives you the schematics for a car, you still need to know a fair bit about reading those schematics (and a fair bit about a lot of other stuff) to work out exactly how to build the car.
Impress.js isn't being delivered as a complete product, but it is a free project. I don't work with Impress.js except as a casual user, but as I understand it "Pull Requests Accepted", and if they aren't, fork Impress.js into Impress.js-with-docs and add them if you feel you must. The entitlement to someone else's time is tiring.
I think the need to replace the content of "How to Use It" section since they do have real documentation.
Progress was made in its own pace, but still, there is a long way to go: https://github.com/impress/impress.js/issues/512
This project is too bold and innovative, it shall not be forgotten.
https://news.ycombinator.com/item?id=3414012
I remember it being pretty amazing back then. Still pretty amazing to me now, though I stopped learning new things in CSS around the same time (somewhat thanks to Bootstrap).
'Your browser doesn't support the features required by impress.js, so you are presented with a simplified version of this presentation. For the best experience please use the latest Chrome, Safari or Firefox browser.'
Wondering which features they are using not available on Mobile Safari.
> Browser should support CSS 3D transtorms
> Browser should support `classList` and `dataset` APIs
> But some mobile devices need to be blacklisted, because their CSS 3D support or hardware is not good enough to run impress.js properly, sorry...
Not sure on the classList and dataset APIs and if there weren't any other option to implement the required functionality.
I don't experience this problem with prezi or normal css transitions.
"It's a presentation framework based on the power of CSS3 transforms and transitions in modern browsers and inspired by the idea behind prezi.com. http://impress.github.io/impress.js"