6 ms·
Inkscape is hiring: Accelerating the GTK4 migration
- tetris11 4y agoThe Senior Inkscape developer post seems to be one of those postings where a company already has someone in mind, and phrases the job listing to be specific only to that person. (But hey, good that an FOSS dev on the project finally gets paid!) The GTK post seems more real, and I hope they find a good candidate
- boomskats 4y ago> The Senior Inkscape developer post seems to be one of those postings where a company already has someone in mind Agreed, but considering the circumstances, I'd be much more confused if they didn't already have someone in mind.
- Technotroll 4y ago> But hey, good that an FOSS dev on the project finally gets paid! It's a strategic choice whether your company wants to employ FOSS tools for your production, but if you do, or you base your company on consulting for other companies who use those tools, then it is of course in your interest to also influence the continued relevance of said tools. This is why FOSS isn't necessarily cheaper for companies, because if you want to defend your interest, you eventually have to hire software engineers to - at the very least - gain an overview, if not some measure of "ownership" or stabilizing influence over the code base.
- wouldbecouldbe 4y agoI know this from the government, because they often have to officially open the position due to policies forcing them even when just renewing a contract. Is this the same for certain foundations?
- orbifold 4y agoIt is the same in many areas I think. You get in if you know someone, or have a prior established rapport. At the very least that is a way more pleasant way of finding a new job.
- wouldbecouldbe 4y agoyeah but why you have to make an official job post? and not offer the job directly? In gov they are forced by policies, but most private orgs dont need to do such gymnastics.
- mikro2nd 4y agoDepends where you are (jurisdiction)... in some countries the law requires an open offer.
- Mordisquitos 4y agoIt's also the same in at least some, maybe many or most, large private businesses, not because of any legal requirement or regulation but as part of their internal ethical standards. Source: personal experience at the company where I work.
- simsla 4y agoIf the job requires a visa, there's sometimes requirements to demonstrate you can't fill the position with local labour.
- frereubu 4y agoSame in higher (university-level) education in the UK due to legislation. It forces institutions not to become closed shops. In many cases the institution has a preferred internal candidate, but forcing them to open it up at least gets external people a foot in the door. In many cases the internal candidate is the best for the job because they know the institution well so they don't need to be brought up to speed on many systems and are familiar with its pedagogical philosophy, although there are obvious downsides where a department can become stagnant if it's always the internal candidate, like a kind of academic inbreeding. But I know of at least two cases where the external candidate won despite there being a preferred internal candidate because the external people were so much more suited to the role.
- wouldbecouldbe 4y agoYeah I also had cases where we made the job so specific they had to do the interview with another candidate knowing they would not hire the candidate, if you ask me it's a puppet show. I understand it protects against certain things, but also make a lot of people dance around bureaucracy needlessly. Im sure, like many of us, you've sighed about things being needlessly bureacratic at some point in your live, this is one of those things that cause good people to feel very frustrated.
- javier2 4y agoYeah, lots of negativity here but I think its nice someone can get paid for their work on a foss project.
- pmontra 4y ago> Significant experience in gtk / gtkmm, ideally some experience in GTK4. I wonder how many people there are with those skills. 1k, 10k? I'd be surprised if the figure was in the neighborhood of 100k.
- davidgerard 4y agoand they're already talking about starting GTK5. CADT all the way down.
- psychoslave 4y agoCADT?
- evertedsphere 4y agohttps://www.jwz.org/doc/cadt.html https://www.jwz.org/doc/cadt.html
- HeckFeck 4y agogood old HTTP referrer at it again. A bit ironic knowing the source of JWZ's wealth!
- deleted 4y ago[deleted]
- CuriousCosmic 4y agoYep. That's why one of the first things I do when I set up firefox is to go into `about:configs` and change `network.http.referer.XOriginPolicy` to 1. For context: 0: no restrictions/default 1: only send if base domain matches (i.e. news.ycombinator.com would only include the referrer for *.ycombinator.com links) 2: only send if entire domain matches (i.e. news.ycombinator.com would only include the referrer for news.ycombinator.com links)
- asimpletune 4y agoThis is great news. Inkscape is amazing but the GUI/canvas can be so slow.
- chris_wot 4y agoI am genuinely interested - is gtkmm like modern C++? It’s been around a long time (gtkmm) and I’m curious how it has kept up with C++ standard libraries.
- nurettin 4y agogtkmm was basically the modern c++ competitor of Qt from 20 years ago. Back in the Qt2-3 era, where gtkmm relied on libsigc++ and templates, Qt relied on meta-object compiler for reflection and macros for connecting signals to slots. It also had threading and database interaction. It provided productivity at the cost of being butt-ugly and you had to be confined to their own editor and build system. Fast-forward 20 years, Qt5 got a big makeover and adapted to C++11. It deprecated hacks like QSignalMapper and provided more 3d and multimedia stuff. And Qt6 adapted to CMake. So Qt is pretty nice looking these days.
- jpace121 4y agoThe examples all look reasonably modern, to the extent that you could use good C++11 without fighting the library.
- ThouYS 4y agogood to hear, will this fix the de-facto unusability on macOS? I've used Inkscape since around 2008 and absolutely love it, but had to switch to affinity designer, because the gui is too slow to work with :(
- parasti 4y agoChange the theme to massively improve Inkscape performance on macOS. A tip I learned from this video: https://youtu.be/I3fhnLDT0ZY https://youtu.be/I3fhnLDT0ZY
- inferiorhuman 4y agoDoes that really need a whole video? The advice is a to use the Minwaita theme. FWIW the inverse high contrast theme is performant for me. YMMV.
- rhizome31 4y agoI gave it a try 2 days ago on Linux and it crashed after a couple of minutes doing basic manipulations. Have I just been unlucky or is it really unreliable?
- chronogram 4y agoI use the command-line version a few times per year on Windows and it's always worked fine. Never used the GUI but just starting it, it seems to be just fine and speedy on a passively cooled laptop while throwing a lot of shapes around.
- herbst 4y agoI won't say it never crashed on me, however I am surprised by the negative comments here as inkscape is super snappy, fast and reliable as long as I am occasionally using it which is 10+ years.
- piceas 4y agoImho probably unlucky. At least on Windows it is way more stable than a few years ago. Then again it can be hard to tell. E.g. The converse is true for me for LibreOffice which used to be fine but crashes within a minute or two every time.
- jaysonarimado 4y agoHackeng
- RugnirViking 4y agoman id love to do that, inkscape is one of my favorite pieces of software. But ive got no time for it sadly. best of luck to them
- ShadowBanThis01 4y agoI don't have the expertise, but I too hope it works out for them. Would love to be able to adopt Inkscape as my go-to art program. Right now I wrestle with Sketch or Affinity Designer, neither of which is totally satisfactory.
- camel-cdr 4y agoThey recently added support for easy editing of multipage pdfs. Such a good feature!
- wg0 4y agoMaybe it is a wrong question or impolite but a genuinely curious question. Hiring a senior C++ developer with GTK experience is costlier than let's say a senior backend engineer (Python/Go) OR a senior frontend engineer? There's complexity in each domain for sure but maybe it is more a matter of demand and supply that impacts this? There's less software being written in C++ with GTK than there are enterprise (or otherwise commerce etc) backend and frontend being written.
- Joel_Mckay 4y agoIn general, people will use a cross-platform library to port such applications. While QT will likely never really stabilize (I'd flag it unsustainable), the https://www.wxwidgets.org/ https://www.wxwidgets.org/ is able to be statically linked into commercial and opensource projects at no cost without tripping GPL. "Hiring a senior C++ developer with GTK experience is costlier" I think you are confusing skill valuation, and operational productivity. Some have an erroneous notion talent is interchangeable. Likewise, applicants with identical base skill-sets on their CV often mistakenly believe they even have long-term employment options (outsourced, youth tax credit churn, and or senior wage suppression). Most FOSS people are easier to train, as most already can mitigate utter chaos already. =)
- wg0 4y agoWhat I have learned over the years is that there's no experience to shortcut. For example, a Django developer might learn GTK in two weeks but their code won't be as polished as someone writing GTK applications for a decade. Conversely, I have seen Python code bases that are so much of a horror show that you'd question why someone would do such a stupid thing in first place? The thing is - they didn't do a stupid thing. They didn't know any better.
- Joel_Mckay 4y agoTrue, understanding failure is a Darwinion project-management learning process. Experience tells one when it is time for a change. It has also been my experience, no amount of compensation/background can make someone care about a project. =)
- batmansmk 4y agoInkscape is prime for having its Blender moment - the moment where freeing energy 10 years ago pays off and beats the closed source software. I use Inkscape for laser cutting and vector graphics and it’s getting better every year. Still a tad of polish and I’ll be happy!
- wellanyway 4y agoA lot of polish.
- hahamrfunnyguy 4y agoI don't think it needs that much polish. I love that it's performant and doesn't crash all the time like Adobe Illustrator. I've been using it for just about 20 years now and I think they've stated true to the core capabilities without adding to much bloat. If I were to define software quality as a combination of performance and stability, all Adobe products have been in steep decline over the past two decades. Inkscape is still missing a few key features for printing so I do my work in Inkscape then bring it into Illustrator before printing.
- wellanyway 3y agoThere's something about open source UI apps that just screams amateurs. It's actually a fascinating topic, I wish I could put a finger on it and tell specifically what I don't like. Inkscape just feels and looks... slightly off.
- juujian 4y agoYup, so much better than 2-3 years ago. Now if only I could get Times New Roman properly installed on Linux so I could import pdfs properly...
- prmoustache 4y agoWhat is so complicated? There have been install helper available for years: https://mscorefonts2.sourceforge.net/ https://mscorefonts2.sourceforge.net/ Additionnally you can extract them from the windows installer iso.
- gervwyk 4y agoAren't job posting usually removed by HN, only reserved for YC companies? or is Inkscape YC?
- mkl 4y agoThis is news. The people doing the hiring aren't the ones who posted it. Inkscape is an open source project, and is older than YC and unrelated to it.
- sprash 4y agoWho funds this? I would pay for porting back to GTK2.
- vid 4y agoI am probably going to lose some precious poinnnttts for this, but I sure wish they could instead target browsers instead, whether by using the canvas, WebGL, three.js, A-Frame, or something else. This would have the immediate benefit of making the software work on the Web or as a local webapp any device that supports a browser, and they would have a much larger pool to hire from. They could also come up with with great libraries. It is not quite in the same league, but we already have SVGEdit[1] as an example. as well as diagrams.net, but taking a 2023 approach would be much more performant and open ended. 1. https://svgedit.netlify.app/editor/index.html https://svgedit.netlify.app/editor/index.html
- kuschku 4y agoConsidering how sluggish web applications are, please no. If you really want to, you can run Inkscape in the browser the same way Figma runs in the browser: compile it to WASM.
- Laaas 4y agoThere's nothing that says a web app has to be sluggish. You don't need an entire chromium instance to run a single web app. Web views are usually more performant, but have the issues of compatibility (Chromium vs Firefox vs WebKit), but it still seems worth it to me.
- jaystraw 4y agoThere's nothing that says that of course, but my RAM says fooey to webapping a tool like Inkscape. I use it almost every day, I just finished using it to make a poster where I needed to print out a hi-res background with text that would be in juuuuust the right position for me to use my typewriter to type on it and have that text end up in exactly the right place, then scanned that at 1200dpi and used inkscape to crop and export the final piece. I do not think my browser is ready for an 8000x8000 raster image with svg clipping etc. Not to mention the ungodly large bitmap traces, with hundreds of thousands of nodes... A browser tool like Inkscape would be cool and useful. But no replacement.
- 4y ago
- vrglvrglvrgl 4y ago[dead]
- sylware 4y agoHope they don't forget about the port of their c++ to gobject and plain and simple C.
- wellanyway 4y agoNot sure what you mean?
- bowsamic 4y agoInkscape has been unusable on mac for years now. After I pointed it out on my own twitter timeline the lead dev came on and started lambasting me for expecting any kind of usable performance. They are not interested in making it usable
- phkahler 4y ago>> They are not interested in making it usable I would suggest that they don't have the resources to make it usable. I suspect this move the GTK4 could help the performance on mac.
- VancouverMan 4y agoIt has always been slow for me, too, but 1.2 introduced some particularly bad performance regressions. The new version couldn't handle files that 1.1 handled okay. I wanted to report this, but the project uses GitLab's issue tracker. I recall being unable to sign up for a GitLab account using a throwaway email address at the time, so I couldn't report the problem, or even add information later on to the bug reports that others eventually created. The project really should make it easier for users to contribute bug reports.
- phkahler 4y agoI hope this makes the GTK developers realize how detrimental API change can be. I get that some things need to change, but how many other open source projects are going to have some level of trouble keeping up?
- rollcat 4y agoAPI changes? They remove important user-facing features (like custom key themes[1]) without providing any real migration path. I wasted an afternoon trying to figure out how can I make Gnome apps use super+c/super+v/etc like cmd+c/cmd+v on macOS and... no, as of Gtk4 you can't, not anymore. > I'm personally not sure that "user must have an ability to redefine every keyboard shortcut" [...]. [1]: https://gitlab.gnome.org/GNOME/gtk/-/issues/1669 https://gitlab.gnome.org/GNOME/gtk/-/issues/1669 Developers are users too. They are also arguably your most important users - they turn products into ecosystems, their involvement is a force multiplier for your platform. As Gnome is actively hostile towards their users, I'm not surprised they don't care much for third-party developers either (both inside and outside[2] of their ecosystem). [2]: https://gitlab.gnome.org/GNOME/mutter/-/issues/217 https://gitlab.gnome.org/GNOME/mutter/-/issues/217
- phkahler 4y ago>> Developers are users too. For a GUI toolkit, developers are the only users in one sense. >> > I'm personally not sure that "user must have an ability to redefine every keyboard shortcut" I'm not either, but I agree it sucks to just remove existing functionality. OTOH reading the thread it seems on MacOS you can define that outside the application, so integrating with that would be a requirement - did they do that before? We get people wanting to redefine shortcuts sometimes and I'm just like "wow, can't people just accept the defaults? I'm not even sure how to go about implementing that, never mind on 3 platforms..." My current UI complaint is corruption of the title bar. Gnome has allowed widgets up there now. Even if I accept the desire to use the space, some widgets can be used to drag the window while others can not. The primary purpose of clicking up there is to move a window and I can't tell if/where I can do that any more. BTW moving windows is important now with Wayland because Apps can't remember where they were and put themselves there on opening, and the Gnome guys haven't realized that's their job now. BTW I agree with the Wayland thinking on this, it's just that the DE hasn't caught up yet. Also on Windows, MS has made some title bars white/grey and some blue. Same with toolbars. So now when I have multiple windows overlapping it's impossible to tell what is attached to what and what will move the window I want to move. It's like GUI designers think "oh I'd like this" but don't even consider the collateral damage the change will cause.
- anonymous344 4y agolatest 2022-2023 inkscape in windows release totally ruined the text tool. Cannot paste or edit texts anymore, they just gets messed up all the time with spans in the object / layer tree :(
- vrotaru 4y agoLinux desktop will probably have more applications if there would have been less GTK versions.
- vetinari 4y agoHow come? Gtk1 is historic, Gtk2 has been obsolete for a decade, Gtk3 has been the thing since 2011 and Gtk4 is a brand-new thing, where they finally were able to make some changes that were on hold for a decade, since they would break the API. You know, semver, major version.
- vrotaru 4y agoThere was no real reason to rush the transition to GTK3, but it was done anyway. GTK3 with its half-assed support of CSS for theming is just just bad, and slow (especially on Macs) And they continued to change GTK3 API after 3.0, which did not exactly help
- vetinari 4y ago> There was no real reason to rush the transition to GTK3, but it was done anyway. If anything, Linux libraries move too slow. Meanwhile, while seeking perfection, the world around them uses the older releases, with all the downsides it entails, so they cannot wait until it is perfect. > GTK3 with its half-assed support of CSS for theming is just just bad, and slow (especially on Macs) Still much faster than Cocoa on Linux... What Cocoa on Linux? Exactly. Availability of Gtk on a Mac has 0 impact on how many Linux app will decide to use it. > And they continued to change GTK3 API after 3.0, which did not exactly help They added (and yes, deprecated APIs). Nothing that would affect existing applications. Themes were never part of the API and there was a warning, that it is going to change. If someone has to find the hard way, so be it.
- phkahler 4y ago>> Availability of Gtk on a Mac has 0 impact on how many Linux app will decide to use it. I sometimes consider using GTK as a cross-platform GUI vs what we do today (a small wrapper over Windows, macOS, and GTK) so we can have some nice things - like resizable text and SVG icons. Not supporting macOS would mean not using GTK for that. At the moment, no static linking means no GTK for that too because we ship a single binary for Windows and I don't want to deal with an installer.
- cies 4y agoWish they picked Qt. Seems to be easier to create lightweight portable UIs with that, and the upgrade path is also a lot easier on the devs. Not here to start a flame war. And I know about https://apps.kde.org/karbon/ https://apps.kde.org/karbon/ But nothing matches Inkscape in features: I learned it years ago and still use it every couple of months.
- pcrh 4y agoI'm not a software person, but is it usual to hire stipulating that the job will be only 16 weeks long?
- flumpcakes 4y agoIf it is a fixed term contract then yes...
- kazinator 4y agoGTK has had weird issues on Windows for years. For instance newly created windows don't go to the foreground, and may sit there entirely hidden behind other windows. It's amazing that hasn't been fixed; I can reproduce it with newer Gimp releases easily like I could two decades ago.
- pier25 4y agoIs this going to improve the performance in mac?
- TingPing 4y agoGTK4 is much more performant on macOS in general.
- jcarrano 4y agoWhat's the point of GTK4 and why does it have to be incompatible with GTK3? Is it really worth it to spend so much developer effort across so many projects to migrate them to GTK4?
- deleted 4y ago[deleted]
- TingPing 4y agoThe biggest changes are to rendering. GTK 1-3 used Cairo to do CPU rendering. It is slow and incapable of modern rendering features. GTK4 makes good use of the GPU with OpenGL (and kinda Vulkan). It has been a huge win for performance improving animations, shaders, multimedia, zero-copy integration with external projects like WebKit, etc.
- Liskni_si 4y agoYeah, "good use", and also just happens to no longer support subpixel font antialiasing, so good luck if your screen isn't 4K. Which a lot of screens out there aren't. :-(
- jcarrano 3y agoWas it impossible to add GPU acceleration while keeping the old API?
- TingPing 3y agoYes the entire rendering API was based on Cairo. There was an attempt to have Cairo use OpenGL but it was mostly unsuccessful and abandoned. Even if that worked the paradigms used are very different and would fight performant GPU usage.
- bluedino 4y agoOnly 16 weeks?
- mixmastamyk 4y agoTo accelerate port to a new version of a toolkit? Sounds reasonable according to Mcconnell’s “cone of uncertainty.”
- beastcoast 4y agoAny word on spot color support?
- shove 4y agoI’m glad to hear there are actual ($) resources supporting Inkscape. I wish there were enough to support a UX designer as well.