Someone at WordPress noticed my complaint and wrote up this detailed bug report in the WordPress GitHub (account required). It’s gotten a little attention in the intervening months, with its most recent update in April. But the bug persists.
An aside: As a fellow who makes his living in the software industry, I’m not at all surprised that WordPress hasn’t fixed this bug. I can’t imagine that this one ranks high on the to-fix list, as Flickr embeds are probably not a critical function. You can fix only so many bugs. Reading the report, there’s broad agreement that it is a bug, and some work has been done to get at its root cause.
The workaround I initially found is to create an HTML block, paste the Flickr embed code into it, delete the <script> tag from it, and convert it to a regular block. It’s a lot of steps for a simple result, but it works.
But recently I stumbled upon an even easier workaround. Create an Image block and press Ctrl-V to paste the Flickr embed code. Bam, the image appears. This method strips the <script> tag for you! It’s so much easier.
Grab handles appear on the image. Drag them to size the image to your liking.
Boom, that’s it, the next blocks flow around the image. At least, it did until the most recent block editor update. It’s broken now. After step 2 above, you can no longer select the block with the image in it. It appears to merge with the next block. If you click the image and use the block tools to delete the block, it deletes the next block but leaves the image in place. The only way to delete the image is switch to the Code Editor and remove the code that embeds the image. Here’s a screencast that illustrates what’s happening. This has got to be a bug.
I have found a sort-of workaround. Insert the image, size it, then left or right align it. It gives the desired end result, as you can see at left.
The only trouble is, you still can’t select that image block. I can’t resize it, I can’t move it, I can’t edit the caption. I can’t even delete it.
The only way to interact with the image block after that is in the code editor.
I opened a case with WordPress.com Support and described this regression. The support engineer said that the block editor was never designed to work in the way I described. I replied that it had indeed worked that way until a couple days before I opened the support case.
The engineer then asked me to either use the Text & Media block, or use the Classic Editor block, to do what I wanted.
This is an example of the Media & Text block. It doesn’t support Flickr embeds; unfortunately, I use Flickr to host most of the images here. Also, the default text is huge and you have to format it to try to match it to the rest of the post’s default text size. You get a slider to do that, and you have to match it by trial and error. It doesn’t actually flow the text around the image, as you can see.
It does work to use the Classic Editor. I’ve done it here: this paragraph and the image at right are in the Classic Editor block, and the paragraphs that follow are in Paragraph blocks.
It was surprisingly challenging to remember how to use the Classic Editor after all these months in the Block Editor, but I figured it out.
However, I was still sure I had found a bug, and I said so very directly to the support engineer. I shared an old post with the engineer that showed how I had flowed text around an image. I pointed the engineer to the underlying code behind the post to prove it: there were dimensions in the code for the image. Those wouldn’t have been there had I not used the grab handles to shrink the image. The engineer finally said, “Okay, I see you were able to do this before. It seems unusual that it was possible to do this before, but I can certainly report this change to the Block Editor devs. for you.”
No, it wasn’t unusual. This is how it actually worked.
Furthermore, following the steps I described above to flow text around an image results in a block you can no longer select, and can only delete by switching to the Code Editor. In what universe is that not a bug?
If anyone from WordPress happens to read this, I’d be grateful if you’d check what I’m saying here and, if I’m right, open a bug ticket for it. I’d surely like to see this fixed as I encounter this bug every day.
Most of the time when I open a support case with WordPress.com I get active troubleshooting. I’ve found several bugs over the years and most support engineers are happy to get to the bottom of it with me and, when I’m right, write a bug ticket. They even email me a link to the ticket so I can follow it and see when it gets fixed.
But every now and then a support engineer repeatedly tries to tell me that whatever bug I’m encountering is how the system is supposed to function, or that I am wrong about how the system used to work. That makes me nuts. I feel gaslit.
I know this support engineer doesn’t know me and has no idea I’ve been making software for a living since the late 80s. That I was a quality engineer for 17 of those years. I’m adept at identifying bugs.
Harrumph, enough ranting. I hope someone at WordPress.com figures out that this condition exists and puts it in the queue to be fixed.
One year ago today, I was fired from my job leading software engineers in a startup.
I’d been unemployed before, but never had I been so brutalized on my way out the door. I’ve had plenty of time to process it now, and I believe that the new VP wanted all of her own people in place. Two of my three peers were fired within her first month, and a third saw which way things were going and quit a month later. I didn’t feel great about things, but having just lost my father the last thing I could handle was a job search.
I was politically well connected and well liked, and I believe she knew it and realized she’d have to play a longer game to get rid of me. She strung me along with promises of a big promotion, and gave me duties she said were in line with that role but which ultimately removed me from the day-to-day duties of leading the engineers. I also participated heavily in preparing for the company’s Series A funding round. The lead investment firm, by the way, praised our engineering team, saying it executed better than any engineering team in their portfolio.
After the funding was secured, I found I had little to do. I started being left out of meetings and decisions. The VP also started questioning my ability to lead, offering as evidence that the chief architect and head of DevOps had lost respect for me. When I asked those two gentlemen about it, both expressed what looked to me to be genuine puzzlement over the VP’s statements. And then the axe fell, and I was out.
Astonishingly, six weeks later that VP was terminated.
As I’ve written before, it was very challenging to cut through my intense anger as I searched for my next job. But I managed to land a position that started the first of January. I still led engineers, albeit with a lesser title. It was a decent enough place to work and so I got on with it and tried to put what had happened behind me.
In January, a remarkable thing happened. The CEO of that startup contacted me to apologize for how badly I’d been treated. At first, it felt like he’d reopened the wound. But after my emotions settled, his apology helped me start the long process toward forgiveness.
I stayed at the new company just five months. I was lured away to an engineering leadership role at a growing, vibrant company with better pay and more responsibility — more than I had at that startup. I’ve been there about five months now, and I’m pleased to report that I’m truly happy there.
I’m happier than I’ve been in my career since 2011, when a big company bought the company I worked for. I’d been extremely happy there in a great job working with great people I trusted and enjoyed, but the big company ruined everything. I decided to try my hand in the startup world, which I did starting in 2013. I worked for three different startups between then and 2018.
But since 2011, it’s felt like I’ve been wandering in the career wilderness. I’m glad the wilderness years are over.
You can read all the posts in this saga here. If you’re curious, my LinkedIn profile is here.
Software engineers all over the world continuously deliver new and changed functionality to WordPress.com. This is great when you like the changes, and not so great when you don’t. Especially when you have to learn all new steps to do something you’d already learned to do and were happy with.
One major change was the new block editor. It was a whole new way of approaching creating content. I found it to be easy to learn and I like it a great deal better than any other editor WordPress has ever offered.
One thing I especially liked about it was how easily I could embed images from Flickr, which is where I host most of my images. In the old editors, embedding a Flickr image was a multi-step process. One of those steps was manually stripping out of the embed code a <script> tag that WordPress tripped up on.
WordPress actually doesn’t allow <script> tags in posts. This is wise, because those tags execute in your browser code that’s stored elsewhere. That code could be malicious. The code Flickr wants to run in your browser is harmless, but there’s no way for WordPress to know that.
In the block editor, simply pasting the Flickr embed code into an empty block stripped the <script> tag and made the image appear. Yay!
But this functionality was recently removed with neither warning nor explanation. Pasting a Flickr embed code into a block now results in a blank block.
But not an empty block. When you switch the block to HTML view, some HTML code appears. WordPress converted the Flickr embed code to the image’s simple URL wrapped in a hyperlink tag, wrapped in a paragraph tag, like this:
This is a malformed hyperlink, in that it specifies the link target (the page to go to, here the URL of the Flickr image) but no text or image to which to attach the hyperlink. The browser correctly renders this as blank.
Thinking I’d found a bug, I opened a case with WordPress.com support. They told me that simply pasting the Flickr embed code should never have worked because of the <script> tag. They didn’t explain why.
I pointed out to them that before this change, blocks flawlessly stripped out <script> tags. I asked if they would restore the old functionality. They said with no explanation that they would not.
They gave me two alternatives. The first is to paste the Flickr image’s URL into an empty block. This does work, but the image is of a fixed size, which is narrower than the block on some screens. I did it below, so you can see. There doesn’t appear to be any way to increase the image size. I almost always want the image to scale to full width, so this alternative won’t work for me.
The other alternative they offered is to paste the Flickr embed code into a block of type Custom HTML. This adds three extra steps I didn’t have to do before:
Convert the automatically created default block to a Custom HTML block.
After pasting the Flickr embed code, manually delete the <script> tags.
Open the block menu and choose Convert to Blocks to show the embedded image rather than its underlying HTML code.
This is not onerous, but it is disappointing because several days ago I did not have to do these steps. A real benefit I gained with the block editor is now lost. These steps give me the same end result I had before, at least.
In my work as a software engineering manager in a company that delivers a software product over the Internet, I’ve personally led engineers to deliver changes that have caused users frustration. There are a lot of valid reasons to do it. But users hate to be surprised by changes that alter their workflows, especially when they don’t know why it had to change.
I’d love it if WordPress.com would revert to the old functionality so I can just copy and paste those Flickr embed codes and move on. But I’d have an easier time accepting this loss of functionality if someone had given me even a flimsy explanation of why.
My soon-to-be-former employer has been a decent place to work and I haven’t been unhappy. I lucked into a good boss who was helping me see some of my blind spots and was challenging me to grow as a leader.
There were things I didn’t enjoy about this company, things typical of a company in its business climate at its phase of life. And I didn’t see a growth path beyond perhaps a promotion to Senior Manager. But given that it didn’t hurt to work there, I thought I’d soak up as much experience as I could. I’m still early in my engineering-leadership career and I need to build credibility.
About eight weeks ago a recruiter from another prominent local employer of software engineers contacted me about joining them as an engineering manager. I know that this company has completed a business and technology transformation that was starting to pay off in their marketplace. They were also using more modern processes and delivery methods. That’s exciting stuff. But the job was a lateral move at the same pay and I told them that I couldn’t consider a change unless it was for a higher position and more money.
I figured that would be the last I heard from them. I was stunned when they contacted me again a couple weeks later, saying they’d recast the position one level higher with a compensation package to match.
Having worked for many software companies in this market over nearly 30 years, I know people pretty much everywhere software engineers work in central Indiana. So I contacted a couple people I know at this company and asked what they think. They were enthusiastic about the work environment and about the company’s prospects, and said I should join them.
So I went in for an interview. It went well, and they offered me the job. It was easy to say yes. This choice is right for my family now and for my career in the future.
But it feels all kinds of wrong to quit a job after just five months. Having managed people for 20 years I know full well how disruptive it is. I did not enjoy telling my boss, who has treated me well; or my team, which I enjoyed very much, that I was resigning. Fortunately, they took it well.
I’ll come home tonight with my things in box, which I’ll carry with me to my new job on Monday.
I’d been a first-level manager in the software industry for 15 years, leading testers and technical writers, when I was passed over for a promotion to Director. It pissed me off. I was a good manager who had accomplished a lot for that company, and I was ready to stretch into the next level. I thought I deserved the chance. I don’t think it’s just my ego talking when I say I would have done a better job than the man they brought in and for whom I had to work.
Then I got a call from a startup software company: was I interested in being a Director for them?
Why yes. Yes I was!
I don’t know where my ambition came from, as I’d had little of it before then. Since I was a teen I had wanted only to work in the software industry. For a long time I was perfectly happy writing technical documentation and testing software to make sure it worked as intended. I didn’t seek to move up the ladder; my first management job fell into my lap.
Yet through my early 40s I felt pangs of discontent. I could see ways to do things better, but as a manager I lacked the authority to do much about it. I itched to have more clout and make a bigger impact. Also, as my kids were headed toward their college years, the extra money of the Director level appealed to me.
I got the job and dived belly first into boiling water. What a mess things were there. Not only did I build their test team from scratch, but I also turned around their broken software delivery system. I wasn’t able to fix the company’s fatal flaw, however: the product was a hard sell, and we kept widely missing our sales goals. We rolled and pitched as upper leadership had us build this and then that into the software hoping something would catch on in the marketplace. Nothing ever did, not enough to make a dent in the market, not enough to satisfy investors. Sales became frightfully poor for six months and it became clear they’d have to cut staff. They showed me the door.
I moved on surprisingly quickly to another young company, beyond its startup stage but not yet mature. I built a couple functions from the ground up as a Director there — another testing team, and a program management team. It was great fun and I liked it there a lot.
Yet I’d started dreaming of being a Director of Engineering. Testing had become old hat for me, and because of changes in the industry opportunities were drying up. But also, I knew that quality starts at the top — you have to build it in. To deliver software as well as I knew it could be done, I’d have to do it by leading the software developers.
My chance came two years ago. An executive I knew and admired wanted me to lead engineering at his startup. I jumped at the chance.
I proved there what I wanted to prove all along: that building a product well from the start is better and faster all around. Our product had few bugs, it held up under load, and it scaled with the business.
But after we built the core product, there were internal disagreements about what to build next. It undermined everything. The executive who hired me had ideas, but he didn’t win over the rest of the execs and in the end he resigned. The person they brought in to replace him treated me badly, and as you know if you’ve been reading this blog for the last six months she fired me with neither explanation nor warning.
I had proved to myself that I could do all the things I wanted to do — but so what? It didn’t save these companies, it didn’t give me the feelings of accomplishment I wanted, and it sure as hell didn’t bring me the respect and admiration I was secretly looking for. Instead, I wound up on the street.
At least I’m still in engineering. Also, I’m a deeply experienced first-level manager; this is a job I can do well. Even better, I’m in an organization that, while not perfect, functions reasonably well. As in all companies there are business challenges, but there are agreed-upon plans to work through them. If you’ve ever worked for me, you’ve heard me say it: even a mediocre plan will work if everybody follows it. Also, because the company is mature it pays market rate, something startups don’t do. I make the same money I did before as Director of Engineering.
I’m dancing on a fine line. To accept where I am feels like giving up on my dream. Even though I found out my dream isn’t all it’s cracked up to be, a part of me wants to double down on it to prove it was good all along. Maybe I should get a new dream. Or maybe I should stop dreaming and be content with what I have, because it is objectively good.
Sign up for my newsletter!
Sign up for my monthly newsletter, Back Roads, and be the first to know what I'm working on!