<Glazblog/>

Saturday 20 December 2014

Sims4 WTF

My son Gabriel got as a present the Sims4 game for Windows. He tried to install it on his Win7 Ultimate 64bits box but no luck at all, Origin crashing in msvcr100.dll with a c0000417 error. Despite of looking everywhere for an hour, we could not find a fix. Since I'm sure some of my readers have already hit - and solved - this issue, can you please help? Thanks a lot !

Thursday 18 December 2014

Bulgaria Web Summit

I will be speaking at the Bulgaria Web Summit 2015 in Sofia, Bulgaria, 18th of april.

Wednesday 26 November 2014

Yosemite maximize/fullscreen button

The always remarkable Wladimir Palant has found a fix for the most annoying OS X "feature" ever, the change of behaviour of the window maximize button. In Yosemite, it now defaults to fullscreen and you have to press the Alt key to get the "classic" behaviour of window maximization. This is so painful all the people I know are currently asking how to reverse that. Given the very negative feedback, I'm pretty sure Apple will at some point in the future introduce a defaults allowing to reverse that from the command line, but for the time being we're all cursing in front of our Mac when we toggle an app fullscreen instead of maximizing it. Apple, read it well: One Does Not Change a 25 Years Old Behaviour; remember the Windows Start button. Oh, and the fullscreen standalone button on the right hand side of the titlebar was better than the current Yosemite blurby hack.

Soooo... Wladimir found that free piece of software called BetterTouchTool (BTT). Follow the steps below:

  1. Download BTT and install it.
  2. During installation, your mac may ask you to allow Preferences to control accessibility, that's normal
  3. In the main BTT window, click on the Other button in the main toolbar

    (image 1)

  4. Create a new trigger and select the "Leftclick Green Window Button"

    (image 2)

  5. Click on the Predefined Action dropdown button and type "zoom" in the search field

    (image 3)

    select "Zoom window below cursor"
  6. Create a new trigger again and select again "Leftclick Green Window Button" (see step 4 for the image)
  7. Check the "Opt" button

    (image 4)

  8. Click on the Predefined Action dropdown button and type "full" in the search field

    (image 5)

    select "Enter fullscreen"
  9. You can now close the window ; make sure BTT is running at all times.

Thanks Wladimir and thanks BTT! Not perfect but better than regular Yosemite's behaviour!

Wednesday 19 November 2014

All words ending in -ism are bullshitism

Through twitter, I stumbled upon this document logorrhea. I found it so silly that I need to post something here. I am expecting trolls to wake up so comments will be closed on this post, exceptionally.

Let me revisit the 13 bullet points present in that article:

Using "guys" to mean "people"
I find this ridiculous. One just does not change a living spoken language like that. Complaining about that makes people think about it while most of them were not thinking that way, and were certainly using "guys" in a totally non-sexist way.
Using "girls" for "women"
This is again ridiculous and so US-centric. Here in France, women of all ages call themselves "les filles" and I never heard anyone complain.
"Mom" as an example of non-tech user
All W3C co-workers can testify I often quote my dad as an example of non-tech user. For two reasons: first, my mom passed away ten years ago; second, my dad is an excellent non-tech beta-tester. Anyway, I would happily use "mom" if my mom was still here AND a non-tech user. This is none of your business anyway if I want to mention my mom or my dad.
Using avatars that are male by default
Seriously? This sounds like the rant of a frustrated 10 years old kid (and I don't even know if the person who wrote the article is a woman or a man, old or young, westerner or not, I just do not care)...
Describing software or algorithms as “sexy”, “hot”, etc.
Some of my friends can testify I used to describe the beauty and the "sexyness" of some complex proofs in maths. They did the same, men or women. This is not going to change, and I find this request absolutely ridiculous and having nothing to do with sexism.
Assuming women they meet are in non-technical roles.
Here, the author has a point. Agreed.
Fetishizing “hot geek girls”
It seems to me the author of that list is fighting a war impossible to win: there will always be morons on this planet, and they will always outnumber the others. Live with it.
Denigrating things by comparing them to women or femininity
In 23 years in the software industry, I never ever heard someone do that. This is about fighting Don Quixote's windmills.
Stereotyping women’s needs… or ignoring them.
I just cannot find the right words to describe my feelings reading this, sorry.
Using dark UI patterns.
This is so wider than sexism I have no idea why it's here.
Repeating generalizations about gender essentialism.
Ah, a new concept, "gender essentialism". Lobbyists go so fast inventing new terms for their rhetoric fights these days I cannot cope. Ooops, is that generalization? So sorry...
Assuming every woman in tech feels the same way and/or wants to discuss her experiences “as a woman in tech”.
Again, 23 years in tech and I've never seen that happen.
Staying quiet when other men do these things.
I promise I will never stay quiet when bullshitisms appear on my radar, wherever they come from, including from people fighting sexism with arguments that seem to me totally wrong.

Thursday 13 November 2014

Tech journalists

Long ago, there was Cnet's Paul Festa. When Festa went (finally) away, I thought we could take tech journalism practices back to normal. Seems I was wrong. Here's a summary of things that happened to me in the last months:

The unpolite

  • (someone to me) Hello Daniel, I am forwarding below an interview request from a journalist who says he misses your email to ping you
  • (me to that someone) thanks, will reply.
  • (me to journalist) got your request, expect answer to all questions soon
  • (me to journalist) here are the replies. Best regards.
  • ...
  • ...

No ACK, no thanks, no reply, no notification the article will be published, no notification the article was published. In short, the journalist never said me a single word directly. That person is now blacklisted. Can still leave that black list if there are some sort of apologies.

The impatient

  • (journalist to me at 7pm PST) hello M. Glazman, I'm writing an article about blah, I know you're based in Europe but could I call you on the phone in the next half hour?
  • ...

7pm PST is 4am here. I was of course in front of my computer at 4am waiting for a journalist's email and ready to take a call from the US at 4:30am. Of course.

The painful

  • (journalist to me) so what's your activity/title at W3C?
  • (me to journalist) I am co-chairing the CSS Working Group

Article is published, of course w/o notification. I am listed there as "W3C Chairman". Obviously.

The bastard

  • (me to journalist) hello, you interviewed me a few weeks ago and now that the article is published (you did not notify me, did you?), I discover at least one paragraph with quotes from me completely opposite to what I precisely said. What I precisely said is « blah », and you can see it's totally different from the contents of the article so could you please fix this in your article?
  • (journalist to me) this is not my recollection of the interview
  • (me to journalist) well, you recorded the interview so you can check ; please check.
  • (journalist to me) sorry but I don't have time for that
  • (me to journalist) again, the words put in my mouth by your article are absolutely not the ones I said, will you fix them yes or no?
  • ...

No answer, article unfixed. Journalist permanently blacklisted.

The ghost

  • (very polite journalist to me) hello Daniel, first let me introduce myself blah blah if you have some time to answer some questions, I'd be happy to blah blah and best regards looking forward to blah blah
  • (me to journalist) sure, no problem ! send me your questions and I'll reply immediately !
  • (me to journalist) hello, did you send your questions?
  • (me to journalist) hello, I still haven't received your questions...
  • ...

Strange, to say the least.

The rough

  • (journalist to me, precise words, only translated from french) hello, I am a journalist at blah, here are 5 questions. Please answer.
  • ...

In one word only: no. I was polite enough to reply "No, thanks".

The out-of-scope

  • (journalist to me) hello, would you answer a few questions about the future of PHP?

Do I really need to explain?

Monday 10 November 2014

Announcing Quaxe, native desktop and mobile apps from html5 and Haxe

My technical world changed a bit recently with a few events that directly impacted me or the activities of my company, Disruptive Innovations:

  1. Mozilla shows increasing signals that the future of XUL as a platform for embedders like my company is not bright. XULRunner has many users around the world but it's not part of the roadmap any more, unfortunately. I won't discuss here their corporate strategy. My applications BlueGriffon and BlueGriffon EPUB Edition being based on XULRunner and my business being largely based on them, it would be a bit foolish to avoid looking for an alternative...
  2. I have not found a single solution allowing me the flexibility of XUL+JavaScript in native desktop and/or mobile cross-platform apps; there are hybrid solutions for mobile, almost nothing for desktop in a cross-platform fashion.
  3. the two only potential solutions, Qt on one hand and AdobeAir on the other, do not satisfy me for the following reasons:
    1. Adobe Air is nothing near native,
    2. Qt is a big and powerful beast, hard to learn and master.
  4. Apple's Swift looks nice and powerful but cross-platform is not a word available in the Apple ecosystem.
  5. I have discovered Haxe. Haxe is an open source toolkit based on a modern, high level, strictly typed programming language, a cross-compiler, a complete cross-platform standard library and ways to access each platform's native capabilities. If you know ECMAScript and/or Java, you'll find Haxe fun and easy to master. I started playing with it and fell in love with its beauty, simplicity, and the large numbers of packages available.

In such cases, I take a few sheets of paper and start writing ideas. I have put a lot of ink on a dozen of originally blank pages and tested a few designs. I want, I need a very simple, flat learning curve way of writing standalone cross-platform native apps. And if the existing ecosystem can't give me such a tool, well, I do what I always do in such cases: I write my own... So I started writing my own environment for native desktop and mobile applications.

My requirements were the following ones:

  • all UI specified in html5, of course, with the help of role attributes... Maybe I'll add a XUL-like language too just for migration purposes.
  • UI styled by CSS, eh what did you expect? :-)
  • resulting native UI
  • code in Haxe of course compiled to native!!! Assets not trivially readable like with JS...
  • trivial embedding of Haxe-based gaming frameworks
  • trivial embedding of a browser instance (Blink, Servo, etc...). When I say trivial, I really mean it. If you've played with CEF, you probably understand that this is not what I mean.
  • no ugly hacks to deal with OSX menus or Windows icons.
  • dynamic UI changes based on DOM manipulation just like in XUL
  • very simple localization
  • a "Hello world" button in a native window should be a one-minute thing. No big environment to install, no complex setup, no new IDE to learn. You know html5? Just put a <button> inside a new document's <body> in your favorite code editor, open a terminal and type "quaxebuild". Done, you have a native app in hands, ready for distribution.

The result will be Quaxe. Native desktop and mobile applications with native UI from html5 and Haxe.

I am glad to share with you the first demo screenshot below. The app was launched through a open bin/mac/MyFirstTest.app command line on OSX. Just to be very clear, there is NO BROWSER WINDOW in the screenshot below. The app is only a native resizable main frame containing a native button. It's specified in html5, you can access and modify its DOM but it's not your regular browser, there is no Blink, Gecko, Servo or any Web rendering engine inside. There is no common runtime either, à la Adobe Air. It's very, very lightweight despite of having to implement a xml parser, DOM4, a CSS parser, the whole CSS cascade and an OM for the widgetry.

First test screenshot

As you can see above, it's already taking shape. If you're an investor and you're interested, please do not hesitate to contact me at your convenience. Writing native apps is going to be way cooler and simpler than it is now, that's a promise.

Monday 13 October 2014

Happy birthday Disruptive Innovations!

Tuesday 30 September 2014

Quaxe

I am playing a lot these days with Haxe and waxe, the wxWidgets bindings library for Haxe. I have then decided to dedicate a blog to my Haxe ramblings, and that blog is Quaxe (pronounced of course quacks, I am a duck lover...).

Friday 26 September 2014

WebKit embedded in a standalone OS X app you could write in ten minutes

  1. install Haxe: download it from here
  2. install nme and hxcpp: in a terminal, type
    • haxelib install hxcpp
    • haxelib install nme
  3. install my own build of waxe-works (that's only needed to build my own fork of waxe, the haxe lib for wxWidgets); in a terminal type:
    • cd <a_safe_place>
    • git clone https://github.com/therealglazou/waxe-works.git
    • cd waxe-works
    • git checkout addWebViewWebKit
    • cd build
    • neko build.n
    • haxelib dev waxe-works <a_safe_place>/waxe-works
  4. install my own build of waxe; in a terminal type
    • cd <a_safe_place>
    • git clone https://github.com/therealglazou/waxe
    • cd waxe
    • git checkout WebView
    • cd project
    • neko build.n ndll-mac-m32
    • haxelib dev waxe <a_safe_place>/waxe
    • haxelib remove waxe-works
  5. build my example (and don't forget to look at the trivial source):
    • cd <a_safe_place>/waxe/samples/04-Simple
    • haxelib run nme test Simple.nmml mac

The cool part is of course step 5. The rest is environment's setup only. Look at the source, recognize very common wxWidgets stuff there, and compare to other ways of embedding WebKit... Click on the thumbnail below to see a screenshot of the resulting OSX app.

Screenshot of demo

Monday 15 September 2014

Molly needs you, again!

There are bad mondays. This is a bad monday. And this is a bad monday because I just discovered two messages - among others - posted by our friend Molly Holzschlag (ANC is Absolute Neutrophil Count):

First message

Second message

If you care about our friend Molly and value all what she gave to Web Standards and CSS across all these years, please consider donating again to the fund some of her friends set up a while ago to support her health and daily life expenses. There are no little donations, there are only love messages. Send Molly a love message. Please.

Thank you.

Wednesday 3 September 2014

My LinkedIn policy

  1. if I don't know you and you don't explain clearly why I should add you as a new connection, I won't do it
  2. my geeks' world is a world of trust; I will refuse the new connection if I feel you can't be trusted or remove you from my existing connections if you're not trustable any more

Wednesday 6 August 2014

Best pun August 2014

Awarded with loud applause to Bruce Lawson:

Tuesday 5 August 2014

Samsung S5 update

I love the fact my Samsung S5 is water- and dust-proof. "Was" water- and dust-proof is probably better since he tiny plastic part keeping the cover of the USB/charger sockets connected to the phone's body recently broke. Very, very surprising on a high-end cellphone of that price. It's apparently a very common issue.

Friday 1 August 2014

QOTD

If you call yourself a manager, small or large company, there is a quote I suggest you read, re-read, read again and again, learn and apply. It comes from Pixar. It's certainly one of the best management rules I have ever read:

We start from the presumption our people are talented and want to contribute. We accept that, without meaning to, our company is stifling that talent in myriad unseen ways. Finally, we try to identify those impediments and fix them.

Proud father

I'm a proud father! My son Michel, 15 years old, has published his first game on the Google Play Store! It's a bit rough around the edges but I'm so proud! :-)

Wednesday 30 July 2014

Where is Daniel

I suffered last week a major lumbago, leaving me totally blocked, under morphine and hospitalized. I am recovering slowly, stuffed with strong medicines, my back being too weak now to stand a visit to my osteopath. Since I am unable to seat too long in front of a computer (I spend most of my days in bed), don't count on me these days for anything work-related, including unfortunately W3C stuff. Don't expect fast answer to emails either. I need at least one extra week of complete rest to recover a bit. Thanks.

Friday 20 June 2014

Leaving Samsung

This is my last day at Samsung. I am open to job opportunities. I'll continue co-chairing the CSS Working Group, but under my Disruptive Innovations' wings, starting immediately.

Monday 9 June 2014

US Navy LCT 537

In my plane between Paris and Boston, a few WWII veterans were coming back from Normandy and the 70th anniversary of D-Day. In the middle of my flight, I left my seat to walk a little bit (I still have a bad left knee) and saw one of them. He was wearing a "US Navy LCT 537" hat. I stopped in front of him and asked him "Excuse me sir, you're a WWII veteran coming back from Normandy, right?". He replied a strong "yes!". So I told him "There is something I want to tell you: I am French and Jewish. So thank you very much...". He took my arms, my left arm with his right arm, my right arm with his left one, _very_ firmly looked at me and said "God bless you, God bless you.".

I am really glad I did this today.

Wednesday 28 May 2014

from iPhone 4S to Samsung S5

I switched from an iPhone 4S (and an iPhone 2G before that) to a Samsung S5 a month and a half ago and it's probably time to summarize what that change meant to me from both hardware and software points of view.

Hardware

I loved my iPhone 4S's hardware for the following reasons:

  • metal and glass, feels and is robust
  • side button to mute it or block rotation
  • excellent control of iTunes through the headphones' chord: one click to pause, two clicks to move to next song, three clicks to move to previous song
  • lots and lots of accessories
  • battery charging really fast!

I started disliking my iPhone 4S for the following reasons:

  • screen too small and I thought the iPhone 5S was a too expensive and not interesting enough upgrade
  • rather bad sound quality of the too fragile headphones
  • the buttons on the headphones' chord don't work well when it's very cold outside
  • battery is not removable
  • impossible to add a microSD card
  • rear camera too far behind state of art
  • screen quality too far behind state of art
  • loudspeaker not loud enough
  • rather poor 3G reception and no 4G
  • all covers and case add too much to phone's thickness

I love the S5's hardware for the following reasons:

  • laaaaarger and much higher quality screen
  • removable battery and better battery life than the 4S
  • microSD card slot
  • the View Cover of the S5 is very, very nice
  • the induction-charging View Cover is even nicer...
  • dust- and water-proof
  • very good rear camera
  • loudspeaker is loud
  • micro-USB
  • excellent WiFi, Bluetooth and 4G
  • IR to control my TV and set-top box
  • fingerprint reader

What I don't really like in S5's hardware:

  • plastic... When you come from the iPhone 4S, the S5 feels a bit like a toy
  • less accessories
  • it's easy to scratch the metal-like plastic border of the phone
  • no button to mute or block the rotation; I know this can be done easily with a few clicks but, unlike the 4S, I need to remove the phone from my pocket for that
  • the heartbeat sensor is not precise enough and it's rather hard to make it work properly
  • the + and - volume buttons are not separated
  • apparently, three clicks on the headphone's chord does not move to previous song; or it does not work here.
  • the wonderful temperature sensor of the S4 is gone in the S5

Software

I really appreciated my iPhone 4S for the following reasons:

  • iTunes worked well on my Mac; the UX of iTunes seems to me almost unbeatable despite of a few flaws.
  • simplicity and intuitiveness of the whole iOS UI
  • homogeneous UI/UX of almost all apps in the iOS ecosystem, making them in general very intuitive to use
  • iOS preferences are easy to deal with even if they lack a few things
  • trivial Airplay
  • I used a lot an application called "Notes de Frais" for my expense reports. Superbly done and maintained.
  • new OS releases are announced
  • I loved the keyboard and some of its features like switching back automatically to regulars chars after the insertion of an apostrophe, something important when you write in french
  • kinetic scrolling has always been superb
  • worked beautifully with my car's infotainment system.

I was increasingly fed up with the following things in my 4S:

  • my 4S was having a lot, really a lot of trouble, finding a network provider abroad in less than 15 minutes. I often had to shut it down and reboot it for that. Very annoying. Let me put that in the software section as a bug.
  • not enough options in the floating panel of the home screen.
  • no widgets on the home screen
  • too slow to add new features
  • no other browser than Safari; I should say no other rendering engine

S5 and its Android stack won me with:

  • no more roaming issues
  • widgets on home screen
  • lot of options on the home screen's floating panel
  • still lots of apps
  • Smart Booster to use WiFi and 4G together
  • Eco Mode making the battery last days and days
  • private mode
  • Smart Stay, my phone does not go to standby if it can see my eyes...
  • I can use Firefox...
  • I don't use NFC yet but I'm glad it's in

But there are things I am still not used to:

  • I need a replacement for Kies, that I don't like. Any recommendation?
  • no rotation of the home screen?
  • the home screen's floating panel can contain 10 shortcuts and only ten. WHY ONLY TEN?
  • Google, google, google everywhere
  • Contacts offer by default only one Name field. Not two FirstName and Name fields.
  • Android preferences are just a true PITA. It's a mess of epic magnitude, some prefs being completely impossible to understand or sometimes hidden in an unexpected section of the preferences. Geekiness maxima.
  • why the hell is Calendar named S Planner? Seriously?
  • no native DLNA, I add to install the Samsung Link app
  • rotation is sometimes too slow
  • keyboard is not predictive enough and has too small keys; I too often hit the wrong key
  • I still have not figured how to reproduce the apostrophe behaviour of the iOS keyboard described above. Help!
  • bloatware I never used and will almost certainly never use
  • apps UI is too heterogeneous. Not enough intuitiveness. Some apps offer a back button between screens, some rely on the back hardware button, some allow both.
  • all my attempts to find a decent equivalent to my iOS expense report app, with a very good currency management, failed
  • the weather widget takes 1/3rd of the screen! Seriously? I don't need it to show time, I only want local weather. Could be just an icon. In general, widgets eat far too much screen space.
  • works some times weirdly with my car's infotainment system. From time to time, I can't reach my contacts list from the car.
  • some issues with kinetic scrolling and zooming.

All in all, I am a happy S5/Android user. I am pretty sure the UI issues of Android will fade away with new releases. It feels like I'm back in 2014 again.

Update: comments closed, thanks to trolls.

Tuesday 15 April 2014

Welcome cbeard

Among Mozillians, there is a small (not too small, in fact..) group of people who were already here before 15-jul-2003. After that date, we saw old-time contributors rejoin Mozilla one by one, and new hires too, something we had forgotten about since the 2002 Netscape layoffs. Chris Beard was one of them, at the end of 2004 IIRC (time flies, holy cow, time flies...). If old-time Mozillians saw a necessary little shift in the local culture because of these new hires, it was clearly not the case with cbeard, who adapted so well to Mozilla we immediately used his IRC nick to mention him. Having a vision, dealing very well with the community, always open to discussion, leading new projects, highly respected, I'm glad he was appointed interim CEO. Welcome Chris!

- page 1 of 119