
Founder came back after 8 years to rewrite Flash photo editor in Canvas/WebGL - poniko
http://pixlr.com/e
======
poniko
The service was grown to over 60 million users back in ~2012 and got aquired
by Autodesk. After some years most, if not all people working with the product
was reassigned and or left. Still with millions of weekly users but no one
that cared.

Autodesk sold it for near to nothing and the new owners contacted me (org
founder) and asked me if I wanted to get involved somehow. So we build a new
product from scratch since the original app was 100% Flash and we are just
month away from a completely browser block :)

~~~
chii
it'd be interesting to know about the tech behind this rewrite. E.g., what
language/stack, how did you do it (or any frameworks of interest used), and
what, if any, did you learn from the flash version that helped in this
rewrite?

~~~
poniko
Its 99% Typescript and we don't use any premade js frameworks, everything was
written from scratch (except for some font loader and zip), ui, rendering,
webgl filters etc etc.

All the knowledge of how Photo Editing works came out of building the original
products back in the day, there is more information about the field today to
be found written online but much is still secrets kept at a few companies.

The browsers is really a shitty environment to be writing this kind of apps
in, performances is a struggle in every step :)

~~~
nojvek
I’ve spent years building Flash and Flex apps. Some really complex ones. Adobe
had this big bets in RIAs (Rich Internet Applications). Turns out RIAs are
simply SPA (Single Page Applications) now.

Typescript is really nice and close to Actionscript3. I’m glad Flash died.

The new open ecosystem with tc39 and wc3 is pretty awesome.

------
rahuldottech
Context for those who don't know what going on:

Pixlr was (well, still is) a flash-based webapp that allows you to edit images
in your browsers, and apparently had ~60 Million users back in 2012. It was
sold to Autodesk, they didn't do much with it. Then Autodesk sold it to new
owners, who invited the original founder to come and work on it, and as a
result, this canvas/WebGL version was launched.

------
IvanK_net
Hi, I am the creator of [https://www.Photopea.com](https://www.Photopea.com)
and I am a bit sad, that you did not start to work on it earlier. Wish you
good luck! :)

~~~
poniko
Thanks Ivan, still lots of fun to move pixels around :)

~~~
IvanK_net
You are welcome :) BTW. you can open Pixlr PXD files in Photopea (including
text layers, layer styles, save them as PSD, etc)

Actually, it is the 19th most frequent format of files opened in Photopea :)
[https://twitter.com/photopeacom/status/1172183966125871105](https://twitter.com/photopeacom/status/1172183966125871105)

------
chatmasta
Can anybody name a successful autodesk acquisition? Their record seems quite
embarrassing, filled with lots of acquisitions of unrelated tech for inflated
prices that they ultimately shut down.

(No offense meant to the companies being acquired, they’re usually great.
Autodesk is the one who seems to screw everything up.)

~~~
m463
It's extremely hard for large companies acquiring smaller ones to do it well.

Kind of interesting to look through these and wonder what (if anything)
survived:

* [https://en.wikipedia.org/wiki/List_of_acquisitions_by_AOL](https://en.wikipedia.org/wiki/List_of_acquisitions_by_AOL)

* [https://en.wikipedia.org/wiki/List_of_acquisitions_by_Oracle](https://en.wikipedia.org/wiki/List_of_acquisitions_by_Oracle)

* [https://en.wikipedia.org/wiki/List_of_mergers_and_acquisitio...](https://en.wikipedia.org/wiki/List_of_mergers_and_acquisitions_by_Microsoft)

* [https://en.wikipedia.org/wiki/List_of_mergers_and_acquisitio...](https://en.wikipedia.org/wiki/List_of_mergers_and_acquisitions_by_IBM)

* [https://en.wikipedia.org/wiki/List_of_acquisitions_by_Cisco_...](https://en.wikipedia.org/wiki/List_of_acquisitions_by_Cisco_Systems)

* [https://en.wikipedia.org/wiki/List_of_acquisitions_by_Electr...](https://en.wikipedia.org/wiki/List_of_acquisitions_by_Electronic_Arts)

~~~
skrebbel
I'm still impressed that Java appears to be getting better faster under Oracle
than it did in the Sun days. I mean, Oracle! How?

~~~
pjmlp
Something that many keep forgeting with their Oracle hate, is that Oracle has
been part of the Java eco-system since the early days.

They did the NC Java station alongside Sun, were the first RDMS to support
Java stored procedures, ported their installers and GUI tooling to Java,
created their own JVM, later bought BEA, and created their own JEE
implementation, among other Java frameworks.

------
rstuart4133
Far out. A javascript photo editor running in a browser that feels faster than
a native application like the Gimp. What an extraordinary achievement.

But it's not just the underlying speed. It's GUI interface design is simply
beautiful. It's also intuitive, and discoverable. God how I wish other young
designers would follow this example.

I suspect you are going to struggle commercially against "free" from the likes
of Gimp unless you can survive on advertising revenue, but you've done well so
far - bought out, run into the ground, sold back for pennies. It doesn't get
much better than that. Given the quality of this product who knows, it may
happen again.

I wish you and your product the best of luck - you deserve it.

------
bwang29
I'm the founder of Polarr ,
[https://photoeditor.polarr.co](https://photoeditor.polarr.co) , if anyone
wants to hack Canvas/WebGL based photo editor with a full team of Canvas/WebGL
hackers, DM me!

------
throwawaySG
Is there a good vector graphic version of this that folks might recommend? I'm
thinking in particular of when you need to do some quick work on (data-
related) graphs.

~~~
artursapek
I worked on this toy project for a while, but it's not nearly as complete as
these photo editors

[https://ballpoint.io/about](https://ballpoint.io/about)

------
kjaftaedi
I was randomly just looking for a site to do online photoshop yesterday and
abandoned this one due to the flash requirement.

~~~
bennyp101
In case you are still looking, I use
[https://www.photopea.com/](https://www.photopea.com/) from time to time for
stuff

~~~
oblib
This one is awesome too!

Thank you for sharing this!

------
knolax
I forgot about Pixlr. I have many fond memories of making bad pixel art on it.
It really was a step above all the other photo-editing webapps available at
the time.

------
jstsch
Editor looks great, very performant! Is there a way to integrate this in an
existing webapp? E.g. open pixlr in a new window, do some edits, get the asset
back?

~~~
poniko
Thanks! Yes it support the same api as the old ones, will update the site with
more info when we leave beta in January. Simple load and post with the image
asset.

~~~
jstsch
Super neat, will check it out, thanks!

------
amelius
How are the fast pixel-wise operations (color transformations, alpha
composition, etc) coded? Is this something that WebGL or Canvas supports?

~~~
ZenPsycho
1\. Adobe is/was on the standards groups and stnadardised all the photoshop
blend modes into browsers a long long time ago.

2\. Alpha composition? Are you sure that's what you mean? we've had that
universally in browsers since IE7.

I am continually stunned at how little most developers know of what browsers
are capable of.

~~~
amelius
> I am continually stunned at how little most developers know of what browsers
> are capable of.

I guess it's because developers don't always need to know everything.

The browser platform has turned native computational capabilities into a
"hodge podge" of functionalities that a developer needs to pick from, so
programming becomes more like shopping than like building things. Not every
developer likes that mindset.

~~~
ZenPsycho
Really? the only place you wouldn't find that is in Assembly language on
baremetal. Even C has platform libraries and system calls. I haven't seen a
more dithered and inconsistent "hodge podge" than when trying to get something
as simple as a timer working consistently across all the Unix-likes.

Browsers are just a platform like any other, you work with the platform
capabilities the OS or platform gives you. what alternative do you think there
is?

------
londons_explore
Can you tell us how much effort it was to build this? Either in hours or
dollars?

~~~
poniko
It's been better part of a year for two people team (me and my brother) to
build this product. We released one product first we called x with a subset of
features to get code out the door.

------
londons_explore
Looking at the javascript file... Why are all variable names hex strings like
_0x56fb578a ?

Is this some debug mode of a minifier? Is it supposed to make reverse
engineering harder? (it seems to make it easier to me IMO)

~~~
jmull3n
It's obfuscated to protect their source code. [https://github.com/javascript-
obfuscator/javascript-obfuscat...](https://github.com/javascript-
obfuscator/javascript-obfuscator)

------
vishnuharidas
Extremely curious to see a blog post explaining the story behind rewriting the
editor in Canvas/GL.

------
westurner
And it works on my phone now?!

~~~
poniko
It's just the beta for desktop, phone ui will be released in a few weeks. A
dedicated version is made for smaller screens and touch.

------
missingstack
@poniko How did you convert typescript into some hex strings js file?

------
overgard
This is great! Any plans for apple pencil or wacom support?

------
oblib
Wow! That's just awesome!

------
harrisreynolds
Would be awesome if there was more of a story behind this. Clicking the link
just leaves me scratching my head.

Even with the comments it isn't clear what the story is (at least at time of
15 comments)

------
rahuldottech
@mods: Perhaps rename the submission to "Pixlr founder returns after 8 years
to rewrite web-based photo editor interface in canvas/WebGL" to avoid
confusion.

~~~
dang
I replaced "photoshop" with "photo editor" above. I don't see anything wrong
with the title otherwise. The project creator wrote it, so it isn't
editorializing.

~~~
jdsully
This was one of the few times I was genuinely confused by a link on HN. I
didn’t realize there was an author exception to the title rules and I’m not
sure there should be.

Its not the end of the world but one of the things I like best about HN is
trustworthy titles. This erodes that.

Just my 2 Canadian cents.

~~~
dang
I don't see what's untrustworthy about the title here. If it were misleading
we'd change it, but it doesn't seem misleading to me.

It's important that HN's front page not be completely predictable, so we allow
variations sometimes. The rules here are called guidelines for that reason. HN
is a spirit of the law place, not a letter of the law place, and the spirit is
curiosity.

~~~
jdsully
I don’t think its misleading in a malicious way. But it is misleading in the
sense that the title did not at all describe the ultimate content. I would not
have clicked if I knew where it lead. The confused comments here show I'm not
the only one.

The actual story behind this is quite interesting. I wish there was a blog
post with more details. Perhaps if they were forced to use proper titles we
might have got that.

I don’t argue with your authority to vary the rules. I just wanted to provide
feedback.

~~~
dang
Appreciated! And you make a great point that a blog post with the story would
be better. At least the author did include a bit of that in the thread here.

------
andrewstuart
Can someone give context to this please? It leads to an image editor but no
explanation of how a founder is coming back to rewrite flash.

~~~
tylerhou
The title is confusing. The image editor was previously written in Flash; the
founder rewrote it in WebGL/Canvas.

~~~
andrewstuart
OK I thought someone had implemented Flash in WebGL.

~~~
cosmotic
Someone did; that someone is Adobe. Adobe Animate (previously known as Flash)
can export JS code that uses a canvas to draw the animation. It has been this
way for years.

