AboutSelf employed developer, educator, and Japanese linguist
SkillsPHP, JS, some C, various old BASIC dialects...
Joined devRant on 2/19/2017
Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
OK, so I've been working on processing a Japanese dictionary file and things are going smoothly for the most part. Out of ~185,000 entries, I've got 35 that are still causing problems.
The error I'm getting is "Incorrect string value '\xF0\xA4\xAD\xAF' for column...". I've checked all of my encoding and collation settings, and I'm pretty sure I've got it set to properly implement all of Unicode (as well as it does, anyway), as shown in the image attached. My suspicion is the problem characters are likely among the JIS X 0213 character set; in either case we're clearly dealing with a 4-byte character encoding issue here.
If needed I can attach a flag in the database and base64 encode these particular entries so the data isn't lost, but I'd like to just get it to handle the data properly in the first place if possible.
Anyone have any ideas on other items I can check to resolve the error?10
OK, so with a lot of free time on my hands, I figured I'll finally sit down and figure out how to use Xcode and write iOS apps.
Hit the iBookstore and check out the latest version of their guide to "App Development in Swift", and...promptly run into a brick wall because it's based on Xcode 10 and Xcode 11 seems to organize projects in a completely different manner.
Decide I'll just hit developer.apple.com and check the resources there...to find they're all written for Xcode 8.
Online tutorials have been mostly misses because of mutual incompatibilities between different versions of Swift rendering anything but the latest version useless, it seems.
Which is a long way of asking, does anyone know of any good resources for someone trying to finally figure all this out?5
So, if this e-mail I just got is right, Automattic (aka, WordPress) just acquired tumblr.
New job is going well overall, but...
Just overheard a conversation with two coworkers and heard them both say “jif”, unironically...7
Signed up for a market research company (ironically, that I used to work for as a transcriber about 10 years ago) to pull in a bit of extra cash.
They sent an e-mail back confirming my registration.
With the password in plaintext.3
OK, I've got a couple customers I provide e-mail hosting for, but recently it's been...more trouble than it's worth, to put it simply. I'm looking to offload that part of what I do onto another service.
Does anyone have any recommendations for e-mail hosting services? Bonus points if they have good customer support.3
The "voluntary" Affirmative Action tracking questions on your site's job applications are no longer voluntary if you don't have an "I choose not to say" option and refuse to accept the placeholder "Choose One"...
"Refusal to provide this information will not subject you to adverse treatment." ...other than the inability to submit your application, of course.
Set up customer's e-mail addresses in Plesk. Worked fine in testing, all goes well for about a week.
Then their e-mail stops delivering. Stuff arrives, but outgoing messages either bounce or fail silently altogether. I contact 1&1 support, and they help set up SPF and DMARC on the domain, and then we wait and see once the DNS changes propagate.
Well, something about these changes caused my business e-mail (on a separate server) to exhibit the same problem now, when it had been working for 3 years without issue prior to that.
Check back with 1&1 2 days later to see why the first one isn't working; we verified all of the records across everything, tweaked a couple other things (like setting the full hostname in Plesk to mail.servername.com), and waited 2 more days.
Still having the same problem on both accounts. did a bit of looking up the issue for Plesk and found that in order for SPF/DMARC to work, they have to be activated on the Plesk-wide mail settings, and then again individually at the domain level.
Made these changes on my business e-mail's server and domain and it fixed the problem!
Made the same changes on the server with the customer's domain and...still seeing the same issue.
Have checked all settings between them and they're identical. All the appropriate DNS records are in place. I'm kind of at a loss for waht else to check at this point.1
Spotted this and it was too good to pass up. For those not familiar with the word used in the punchline, I suggest you not do what a coworker did when she decided Google Image Search was a good way to figure out what “teabagging” was...11
Cleaning up my desk at the office today. As I'm sure is the case with most of us, I have a draw that's full of old technical crap that's not currently in use (mice, charging cables, USB hubs, routers, access points, cameras, old phones and iPads, you get the idea).
Found out that not only do I have an extra Mini-DVI to HDMI dongle; I apparently have 3 of them. That's more than I've got available Mini-DVI ports to begin with.1
When you’re rebuilding a major project and find a CoTS solution that you didn’t think to look for when starting the project 2 years ago...
Well, lessons learned in a lot of ways here...
Teaming up with a marketing firm looking for a developer. The owner was showing me a couple samples of Craigslist postings that he gets sent every day by a filter he has set up so that I can provide some feedback on what would be a good fit.
Second listing we pull up looks reasonably good at first, then I notice this bit at the bottom:
“Must be available to do design review calls where we’re both on the phone, I tell you what needs to be changed, and you do it on the spot.”
Politely but firmly let my new friend know that that right there was a big red flag saying to move on.
Anyone else have helpful criteria when trolling these kinds of postings?
Another rant reminded me of one of my dad’s favorite sayings about experience...
Some people have ten years of experience. Others have one year of experience repeated ten times.
..and for ohers, the recursion interval is shorter still...
As a bonus, here’s another personal favorite: “Nobody’s completely useless. They can always be used as a bad example.”1
Don’t really put stickers on my laptop, however the rectangular DevRant one has done a great job marking my primary external USB drive since I got it...
For those who speak some Japanese and want to expand their skill set a bit, I found a great introduction to PHP in Japanese a few months back, and have been reading through it primarily with the purpose of learning programming vocabulary and figuring out how to express concepts properly from a grammatical standpoint.
If anyone's interested, here's the link: https://www.javadrive.jp/php/
Scroll down the page for an index of topics.6
Working on a new payment gateway for one of my customers, and it turns out that instead of just specifying the parameters for what to include in the API call they want you to use their drop-in module for it...which is still written in PHP 4 and hasn't been updated since 2011. Also turns out that they only accept data formatted in XML.
Not insurmountable, but more than I feel like dealing with right this moment...7
So, my car's odometer finally rolled over to 100,000 here a couple weeks ago. Been having fun watching it hit various binary values again (100001, 100010, etc.).
Not exactly wrong there. I got started at 10 with odds and ends for fun.
Took a semester of it in college before switching because the compiler and I didn't get along.
Only to pick it back up via self-study 10 years later because the programmer who came on board for a side project never showed up and I wanted to keep things moving.
10 years later still, I'm now running a web design shop full time.
Accepted a feature request that practically doubled the workload without asking for more money, on account of trying to be fair to a customer who was working through a translator.
Only to get stiffed on 3/4 of the money agreed to in the first place.
Only saving grace was everything was on my servers, so I took him down for non-payment.1
Quick Plesk config question...
Been getting open_basedir() notices in the WordPress logs, and frankly it's flooding the log right now. Sample below:
[24-Feb-2019 07:05:19 UTC] PHP Warning: file_exists(): open_basedir restriction in effect. File(/var/www/vhosts/webspacedomain.com/SiteInstallDirectory/wp-content/db.php) is not within the allowed path(s): (/var/www/vhosts/webspacedomain.com/:/tmp/) in /var/www/vhosts/webspacedomain.com/SiteInstallDirectory/wp-includes/load.php on line 397
Checking the settings for open_basedir in the domain's PHP settings, it's currently set to the following default value:
By my read, that **should** be granting permission to the directory. I just checked it against the setting on the dev server (which doesn't report this error), and it's configured in the same manner. Only difference between Dev environment and this one is that the one in Dev is in vhosts/webspacedomain.net/DEV instead of just vhosts/webspacedomain.net
Is there something I'm missing here?4
Getting ready to finally launch a WordPress Multisite project I've been working on for over a year this weekend...and version 5.1 drops today.
And has significant additions in Multisite functionality that I should implement prior to launch while it's comparatively painless, rather than when we've got a bunch of sites with data to reconfigure.
Have some downtime today, so since I lucked out and found some old backups (from before I used Git) of a project I was planning on revisiting, I decided to fire it up and see what I can do to get that going again.
And discovering just how much my coding style has changed since then...
[Code is in PHP, for reference]
* Virtually no documentation (whereas my current style is near-obsessive with PHPdoc blocks)
* Where comments exist, they only use // and are a full tab after the end of the line
* All assignment operators are dutifully aligned on tabs
* Have to update the entire codebase because it relies on deprecated `mysql_*` calls
* Have to flip all of the quotes throughout the codebase because I used double-quotes as my primary at the time instead of single quotes.
* Also relied on magic quotes for injecting variable content into strings
* Associative array practices varied; sometimes the names are encased in double quotes, but I just hit a block where it's all leaving it to the compiler to interpret unquoted string literals
And perhaps the most egregious so far...
* Any time we get database results back the process for cycling through them is to do `$count = mysql_num_rows($result);` (or $count2, etc.), then do a `for ($i = 0; $i < $count; $i++)` (again, or $j, $k, etc.), instead of just a simple `while ($data = $result->fetch_assoc())`2
Silly question, but why is it that in this age of 64-bit computing and gigabytes of RAM applications still have trouble with text files/SQL dumps over 1MB in size? Surely for something so simple it should be able to store it all in memory without any issues, no?11
Met someone recently whose goal with their business is to be an “idea person”. Basically, they’d look at your business, suggest an idea, and it’d be so good you’d pay them for it and go on to the next idea.
Spent the next 15 minutes explaining that
1) Ideas without implementation strategies are cheap (on the order of free if it’s something you can completely express in a sentence or come up with after a superficial observation)
2) You need to bring more to the table than just what other people are already thinking if you want people falli g over themselves to pay you for your thoughts7
Just spent 4 hours working on a somewhat complex restructuring of my current project that, when boiled down totals about 50 new or modified lines.
While I realize that line count != productivity, all the testing and reworking over that period has me feeling like there should be more to show for it.
But then, there's the fact that it's working properly as it's supposed to now, so I guess it's a win in the end.1
On the one hand, I'm done with all of the major bugs in a piece we're getting ready to launch this month.
On the other hand, there's one lingering bug that only appears when I've got Query Monitor running, because WooCommerce throws a false positive "table does not exist" error, which it tries to backtrace through **39** layers of functions, eating all of the memory.
Turning off Query Monitor fixes this, but means I basically have to flip it off before the primary function of the software and flip it back on afterward.
Currently considering the best way to put off the WooCommerce activation for a point where there isn't so much going on...
Ascended Anime Nerd
Got started with Dragonball Z when it first came stateside. Brother was borrowing fansubs of the Cell and Buu sagas back when people were wondering if Goku would ever finish Snake Road.
Around that time I started noticing some serious discrepancies between the broadcast translations and the fansubs, and so I decided to cut out the middleman—after all, how hard can it be to learn Japanese?—and did a search on AltaVista for a “kanji course”, turning up a course hosted by Rice University that taught basic Japanese using Magic Knight Rayearth and YuuYuu Hakusho.
Turns out the answer to the difficulty question is that anything van be simple to learn, if you don’t know it’s supposed to be hard. Especially if you embrace the parts everyone else dreads (falling in love with kanji, in my case).
Over the next nine months I ditched my Spanish class—and all my other classes, for that matter—to study Japanese in the computer lab. I was reviewing the lessons, playing JRPGs on SNES9X (stored on a ZIP disk, since every computer in the lab had a ZIP drive), and transcribing the scripts so I could transliterate and translate them thereafter. In a lab that went so far as to uninstall Minesweeper and Solitaire to discourage playing games on school computers, I had free reign to do so openly because the one time I got confronted for playing a game I had 150+ leaves of handwritten transcriptions to show them.
Long story short, by the time I took Japanese 101 9 months later it was like Hermione in Snape’s potions class, since I had already taught myself about 2 years’ worth of material. I then transferred out to a college that did a one-class-per-month “modular” system that basically allowed me to take 8 more Japanese classes full-time for the following year. By the time my exchange trip came up I was sofar ahead of the curriculum I was taking classes alongside the native Japanese students.
Running out of linguistic topics, I did an independent study on classical Japanese literature in its original, unmodernized grammar and orthography. A topic I’m still fairly active with 15 years later.3