Categories
Current Events Editorial The Street Finds Its Own Uses For Things

“Star Wars” speech or call to action for the remaining people at Twitter?

The inspirational speech that Kino Loy (played by Andy Serkis) at the end of episode 10 of Star Wars: Andor was meant to inspire the prisoners to break out of the Narkina 5 prison labor camp. However, with only a few changes, it could easily be an inspirational message that someone could send on the Twitter company Slack to the remaining employees.

With the news that Twitter has slashed its contractor workforce by about 80% to 1,000 people, there are now about 5,000 people working at Twitter, which is the same as the number prisoners on Narkina 5. This additional coincidence should make the speech even more applicable.

🚨 Spoiler warning for those of you who haven’t yet seen episode 10 of Star Wars: Andor!

“My name is Kino Loy. I’m the day shift manager on Level Five. I’m speaking to you from the command center on Level Eight. We are, at this moment, in control of the facility.”

“How long we hang on, how far we get, how many of us make it out, all of that is now up to us. We have deactivated every floor in the facility. All floors are cold.”

“Wherever you are right now, get up, stop the work. Get out of your cells, take charge, and start climbing. They don’t have enough guards and they know it. If we wait until they figure that out, it’ll be too late. We will never have a better chance than this and I would rather die trying to take them down than giving them what they want.”

“We know they fried a hundred men on Level Two. We know that they are making up our sentences as we go along. We know that no one outside here knows what’s happening. And now we know, that when they say we are being released, we are being transferred to some other prison to go and die…and that ends today! There is one way out. Right now, the building is ours. You need to run, climb, kill!”

“You need to help each other. You see someone who’s confused, someone who is lost, you get them moving and you keep them moving until we put this place behind us. There are 5,000 of us. If we can fight half as hard as we’ve been working, we will be home in no time. One way out! One way out! One way out!”

Categories
Current Events Editorial

Elon Musk is Twitter’s Thanos

“I. Am. Inevitable.”

It must be unnerving to be a Twitter employee right now. I had to look it up, and was shocked to see that his acquisition completed on October 27 — that’s only a week ago! With the news that they will now eliminate 50% of the positions at Twitter, Elon Musk has turned into Twitter’s Thanos, from the plan to stretch resources by eliminating half of all people to inexplicably having a fan club:

Bathroom graffiti from a scene in the Hawkeye mini-series.

The third layoff estimate in two weeks

That 50% figure isn’t the first layoff percentage to be thrown around. In fact, it’s just the midpoint between two other numbers that appeared in the news — it was 75% on October 20th, and then down to 25% on Monday.

Whiplash

Anyone working at Twitter right now must be feeling whiplash from the rapid changes, which seem like Elon’s just throwing ideas against the wall and seeing what sticks.

Consider the remote work policy. What a difference six months makes:

Of course, the end of remote work Twitter shouldn’t come as a surprise. Elon’s take on remote work is well-known.

There’s also the recent story about Twitter developers being asked to print out their recent code for review, a request that could only be topped in bizarreness by the next request: Oh wait, that’s a security risk. Shred what you printed.

The printout exercise is futile — unless the goal was to have an easy-to-see physical representation of how much code each developer has produced, even when shredded. Printout is a pretty poor code review medium. As the Jargon File sums it up so succinctly: You can’t grep dead trees.

You should also keep in mind what it looks like from the points of view of the developers at Twitter, whose code was being reviewed by a team of Tesla developers, who build entirely different software (you know, the software that has a tendency to runs over kids — well, simulated kids, at least). They’re probably developing in different languages too — with the AI and embedded systems, the Tesla developers are likely using C++ and Python, while Twitter is known to use Scala on the back end, and this photo that Twitter coder Leah Culver posted shows that she’s working on the iOS app natively in Swift:

Me with sheets of printed code
Leah Culver tweeted this photo on October 28, 2022 with the caption “Happy Friday all.”

And finally, there’s the investigation into reviving Vine, which I wrote about a couple of days ago. The timeframe seems short, especially since people are being asked to review code that’s anywhere from 6 to 10 years old:

This could be the “ready, fire, aim” philosophy of management in action, or it could just be Elon flexing like Homer Simpson when he was crowned the Stonecutters’ Chosen One (which itself was a tribute to a scene from the 1987 film The Last Emperor):

https://www.youtube.com/watch?v=VhbPuub9x50

Endgame (or: What to do)

If you’re a Twitter employee, you would do well to check out Collective Action in Tech’s A Layoff Guide: Tips for Tweeps by Tweeps to be shared in secure DMs between colleagues — and on a personal device, not a work one!

At the very least, read the What to Expect section, which has these points:

  • Don’t rely on fair or reasonable treatment from the company. Hope for the best but plan for the worst.
  • You will likely lose access to all company systems before being notified that you are terminated. 
  • Assume everything you do on work accounts and work devices is traceable and monitored. 
  • Your manager is obligated and incentivized to follow instructions from leadership. Do not assume your manager will be willing or able to help you, even if they want to. 

Good luck, Twitter people.

Categories
Conferences Current Events Editorial Tampa Bay

If you’re going to Florida Bitcoin and Blockchain Summit 2022, YOU’RE AN IDIOT

Did that headline get your attention? Good.

There’s a lot of local hype about the upcoming Florida Bitcoin and Blockchain Summit, and I’ve come to remind you that last year’s stars were these jerkoffs:

CELSIUS. Yes, that Celsius — the cryptocurrency lending company that filed for bankruptcy. The one who paused withdrawals in June, but not before its C-level people made big withdrawals themselves. The one facing federal investigations. The one whose data dump leaked half a million users’ holdings info.

Last year, they were the darlings of the Florida Bitcoin and Blockchain Summit, where they announced their decentralized finance arm, Celsius X, their CTO announced his moving to Tampa Bay (and became one of Tampa Bay Business Journal’s “25 people to watch in 2022”), they helped facilitate Tampa Mayor Jane Castor’s being paid in crypto (in a fit of crypto fever, she said she’d take two of her paychecks in cypto; she lost 67% of its value since then), and who threw a post-Summit community meetup so popular that there was a waiting list.

Hey, Tampa Bay! Did we learn nothing from Fast? Are we so desperate to compete against the Miami, Florida’s so-called “next tech hub,” that we’re willing to glom onto any grifter who comes along and promises to make us the next Silicon Valley?

As the one-person show behind the Tampa Bay Tech Events List, I will continue to list crypto events — people still want to attend them, and maybe “there’s a there there,” but I cannot in good conscience not stand by and not remind people that last year’s darlings costs some people dearly.

If you feel you must attend this year’s Florida Bitcoin and Blockchain Summit, remember last year’s hype and this year’s outcome.

Recommended viewing

Categories
Editorial

The U.S. needs more green card holders and immigrants to stay ahead

Graphic: “Immigrants: We get the job done.”

“To sustain the United States’ technology leadership in the face of China’s formidable economic and military challenge,” write Graham Allison, a professor of government at the Harvard Kennedy School and Eric Schmidt, former CEO and executive chairman of Google in Foreign Policy, “U.S. President Joe Biden should launch an urgent drive to recruit and retain 1 million tech superstars from around the world by the end of his first term in office.”

For the want of a green card (or: How the 5G story could’ve been very different)

Graphic: 5G phone network.

Their article, The U.S. Needs a Million Talents Program to Retain Technology Leadership, starts with a story about one key player we lost in our failure to take in new people.

In 2009, Erdal Arikan, a Turkish graduate of the California Institute of Technology and MIT published a paper that solved a big information theory problem. He could’ve continued his work in the U.S., but he had to leave because he couldn’t get an academic appointment or sponsorship to stay. He returned to Turkey, turned to China, and Huawei — yes, that Huawei — used his work to create 5G solutions.

The article sums us the situation like so:

And while Huawei has produced one-third of the 5G infrastructure now operating around the world, the United States does not have a single major company competing in this race. Had the United States been able to retain Arikan—simply by allowing him to stay in the country instead of making his visa contingent on immediately finding a sponsor for his work—this history might well have been different.

And with the recent discovery that Huawei equipment installed as part of U.S. communications infrastructure could have a secondary purpose disrupting nuclear arsenal communications, the magnitude of our failure to let Arikan stay in the country has become even more apparent.

It’s the space race all over again

Photo: Time Magazine cover — “Race for the Moon,” featuring an American and Russian astronaut in spacesuits running towards the moon.

China’s leader Xi Jinping said it himself: “technological innovation has become the main battleground of the global playing field, and competition for tech dominance will grow unprecedentedly fierce.”

In 2001, China was still behind technologically. But in the space of only a couple of decades, they’ve leapfrogged the West in communications, facial and voice recognition, other aspects of AI, and green technology, and their education system is producing four times the STEM bachelor’s degrees and twice as many graduate degrees.

Their insularity remains their Achilles’ heel. They naturalize fewer than 100 citizens a year, while the U.S. does so with 1 million a year. That’s a difference of four orders of magnitude.

And what a difference it makes! Half of all U.S. unicorns were founded or co-founded by immigrants, and there are so many big-ass, big-deal companies founded or run by people born outside the U.S.:

Big-ass companyFounder or leaderWhere they were born
Auth0Eugenio Pace, founderArgentina
CloudflareMichelle Zatlyn, founderCanada
Credit KarmaKenneth Lin, founderChina
CrowdstrikeDmitri Alperovitch, founderRussia
DatabricksAli Ghodsi, founderIran
DiscordStanislav Vishnevsky, founderUkraine
EventbriteRenaud Visage, founderFrance
EvernoteStepan Pachikov, founderAzerbaijan
GoogleSergei Brin, founderRussia
GoogleSundar Pinchai, CEOIndia
InstacartApoorva Mehta, founderIndia
InstacartFidji Simo, CEOFrance
MicrosoftSatya Nadella, CEOIndia
NvidiaJensen Huang, founderTaiwan
PalantirPeter Thiel, founderGermany
PelotonYony FengChina
RobinhoodVlad Tenev, founderBulgaria
SlackStewart Butterfield, cofounderCanada
SpaceX, TeslaElon Musk, CEOSouth Africa
SprinklrRagy Thomas, founderIndia
StripePatrick and John Collison, foundersIreland
UberGarrett Camp, founderCanada
Warby ParkerDavid GilboaSweden
ZoomEric YuanChina
ZscalerJay CaudhryIndia

I deliberately included German-born Peter Thiel in the list particularly because he spends a lot of time canoodling with the anti-immigrant crowd. He’s one of those people who says “Ever since my family came to this country, we’ve had nothing but trouble from the immigrants.”

Let’s also not forget that Apple founder Steve Jobs was the son of a Syrian immigrant, and that there are many children of immigrants who’ve contributed so much.

“It’s time for the United States to poach with purpose.”

Photo: Smartphone displaying picture of “help wanted” sign.

That’s what Allison and Schmidt write, and what they mean is that the U.S. should:

  • Grant an additional quarter million green cards every year.
  • Eliminate the rule that limits the percentage of green cards issued to citizens of any single country to 7%.
  • Move the immigration system from its current paper forms-based process to a digital one, which has caused more than 300,000 green cards to be lost.
  • Grant 100,000 additional visas to extraordinary tech talents. You know, like the one Melania Trump got, but give them to people who actually merit them.
  • Adjust the criteria for visas so that people qualify based on their technological expertise.
  • Direct the Labor Department to make recruiting STEM talent a top priority.

…and most importantly:

  • Dismantle the Trump administration rules whose goal was to reduce legal immigration to the U.S.

There’s more in the article, and I strongly encourage you to read it.

And hey, if you’re in Tampa Bay and looking for an example of a highly-skilled green card holder who’s making a difference, let me point you to the handsome well-dressed gentleman in the photo below:

Joey deVilla eats a burger -- that most American of dishes -- after successfully acquiring a green card.
Celebrating my green card status the American way at Burger 21, on January 26, 2017.

Don’t let my accent, grasp of the culture, or accordion skill fool you — I’m a first-generation green card holder from the Philippines, and I’m here to make a difference in the tech world, locally and nationally.

(If you’re really curious, check out my article about my green card interview, which took place a week after the Trump inauguration.)

Categories
Editorial

Your 2022 inspiration

Infographic: “Is It Too Late to Start?” by Michelle Rial.

Happy New Year, fellow techies! Let’s kick it off with the very important reminder above, which was created by graphic designer Michelle Rial.

Book cover for “Maybe This Will Help”.

You should also know that she has a book of similar infographics, Maybe This Will Help.

Categories
Editorial Humor

He’s got a point.

I don’t agree with his takes on masks (guess) and testoterone (a bit too Jordan Peterson/Joe Rogan-adjacent for my liking), but I think he’s spot on with the observation above.

Categories
Editorial

ADAIO.online: Another crypto scam, this time for ADA

Here’s a screenshot from a video that YouTube is suggesting to people who like watching videos about cryptocurrency. Regular readers of this blog will find its format familiar:

Once again, it’s supposed to be a live video of an interview with Charles Hoskinson, founder of Cardano, co-founder of Ethereum, talking about Cardano, with an offer to double your ADA — send them n ADA, and they’ll send you 2n ADA back.

This is pretty much the same scam as one pulled last month with a fake “double your ETH” offer. Read it first, then note the similarities below.

It’s a “live” rebroadcast of a five-month-old video

The so-called “live” video is actually this pre-recorded interview on Lex Fridman’s YouTube channel:

The scammers are playing the video on a loop and piping it to a live YouTube stream to give it the appearance of a live broadcast.

It promises to double your ADA in a way that seems too good to be true

Here’s their promise, take straight from their video:

There’s a reason that they take a lot of space explaining what “double your ADA” means with a lot of examples: it’s all about getting you to think of all that sweet ADA that could be sitting in your wallet — if you’d just point your browser at ADAIO.online and send them your ADA!

Think for a moment: What’s the business model in giving someone twice the ADA they just gave you, which nothing else exchanged?

The ADAIO.online domain is 3 days old

If you do a WHOIS on the domain ADAIO.online, you’ll get these tidbits of information that should trigger your “scammy sense”:

  • Created on 2021-11-17
  • Expires on 2022-11-17
  • Updated on 2021-11-17

As I write this, the domain was three days ago, and its owners are hoping you were born yesterday.

The display of ADA transfers is randomly generated

If you go to ADAIO.online and scroll to the bottom of the page, you’ll see a constantly-updated table of transfers that purport to show people sending them some ADA and then getting double that amount in return.

It’s fake.

A simple “view source” of ADAIO.online’s home page shows that the table’s data is randomly-generated. Scroll to the bottom and you’ll see the script behind the fakery:

<script>
    let day = 1
    let hours = 0
    let minutes = 0
    let seconds = 0
    let wallet = "addr1qxha6qprhk3dp325v7hrwmrg7z54j3wf2pl8wf5zseqfn740m5qz80dz6rz4geawxakx3u9ft9zuj5r7wung9pjqn8aqq79xwr";

    // dont edit
    let titleWallet = document.getElementById("wallet").innerText = wallet.toLocaleString('ru');
    let time = (day * (24 * 60 * 60)) + (hours * (60 * 60)) + (minutes * 60);
    // let timeContainer = document.getElementById('overTime').innerText = time;
    // dont edit


    function randomString(_0xe480x2) {
        var _0xe480x3 = '';
        var _0xe480x4 = 'abcdefghijklmnopqrstuvwxyz0123456789';
        var _0xe480x5 = _0xe480x4['length'];
        for (var _0xe480x6 = 0; _0xe480x6 < _0xe480x2; _0xe480x6++) {
            _0xe480x3 += _0xe480x4['charAt'](Math['floor'](Math['random']() * _0xe480x5))
        };
        return _0xe480x3
    }

    function randomStringHashBTC(_0xe480x2) {
        var _0xe480x3 = '';
        var _0xe480x4 = 'bacfed0123456789';
        var _0xe480x5 = _0xe480x4['length'];
        for (var _0xe480x6 = 0; _0xe480x6 < _0xe480x2; _0xe480x6++) {
            _0xe480x3 += _0xe480x4['charAt'](Math['floor'](Math['random']() * _0xe480x5))
        };
        return _0xe480x3
    }

    var divCounter = 0;

    function randomInteger(min, max) {
        let rand = min + Math.random() * (max - min);
        return Math.round(rand);
    }

    function randomIntegerBTC(min, max) {
        let rand = min + Math.random() * (max - min);
        return rand.toFixed(2);
    }

    function getRandomArbitrary(min, max) {
        rand = Math.random() * (max - min) + min;
        return rand.toFixed(2);
    }

    function getRundomMnogitel() {
        let asd = [1, 0.1, 0.01];
        let getRandom = Math.floor(Math.random() * asd.length);
        return asd[getRandom];
    }

    function GenerateAddress() {
        var result = '';
        var characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
        var charactersLength = characters.length;
        for (var i = 0; i < 8; i++) {
            result += characters.charAt(Math.floor(Math.random() * charactersLength));
        }
        return 'add'+result;
    }

    function GenerateHash(length) {
        var result = '';
        var characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
        var charactersLength = characters.length;
        for (var i = 0; i < length; i++) {
            result += characters.charAt(Math.floor(Math.random() * charactersLength));
        }
        return result+"...";
    }

    function genDiv() {
        divCounter++;
        let valet = document.getElementById("wallet").innerText;
        var _0xe480x9 =
            `${'<div class="item"><div class="top"><div class="data"><div style="" class="data-item">{t1}</div><div style="display: none" class="data-item">{t2}</div><div class="data-item" id="btcstr">{t4}</div><div class="data-item">{t5}</div><div class="data-item">{t6}</div><div class="data-item">{t3}</div><div class="data-item">{t7}</div><div style="display: none" class="data-item">{t8}</div></div></div><div class="bottom"><div class="data"><div style="" class="data-item">{b1}</div><div style="display: none" class="data-item">{b2}</div><div class="data-item">{b4}</div><div class="data-item">{b5}</div><div class="data-item" id="btcstr">{b6}</div><div class="data-item">{b3}</div><div class="data-item">{b7}</div><div style="display:none"; class="data-item">{b8}</div></div></div></div>'}`;
        let _0xe480xa = GenerateHash(10);
        let _0xe480xb = "616" + randomInteger(1, 9) + randomInteger(1, 9) + randomInteger(1, 9);
        let _0xe480xc = 'right now';
        let _0xe480xd = GenerateAddress() + '...';
        let _0xe480xe = 'IN';
        let _0xe480xf = valet.substring(0, 10);
        let valueSend = getRandomArbitrary(1500, 40000);
        let _0xe480x10 = valueSend + ' ADA';
        let _0xe480x11 = ((Math['random']() * 0.009 * getRundomMnogitel()) + 0.0001 * getRundomMnogitel())[
            'toFixed'](6);
        let _0xe480x12 = GenerateHash(10);
        let _0xe480x13 = "616" + randomInteger(1, 9) + randomInteger(1, 9) + randomInteger(1, 9);
        let _0xe480x14 = 'right now';
        let _0xe480x15 = _0xe480xf.slice(0, 10) + "...";
        let _0xe480x16 = 'OUT';
        let _0xe480x17 = _0xe480xd;
        let _0xe480x18 = (valueSend * 3) + ' ADA';
        let _0xe480x19 = ((Math['random']() * 0.009 * getRundomMnogitel()) + 0.0001 * getRundomMnogitel())[
            'toFixed'](8);
        _0xe480x9 = _0xe480x9['replace']('{t1}', _0xe480x12);
        _0xe480x9 = _0xe480x9['replace']('{t2}', _0xe480x13);
        _0xe480x9 = _0xe480x9['replace']('{t3}', _0xe480x14);
        _0xe480x9 = _0xe480x9['replace']('{t4}', _0xe480x15);
        _0xe480x9 = _0xe480x9['replace']('{t5}', _0xe480x16);
        _0xe480x9 = _0xe480x9['replace']('{t6}', _0xe480x17);
        _0xe480x9 = _0xe480x9['replace']('{t7}', _0xe480x18);
        _0xe480x9 = _0xe480x9['replace']('{t8}', _0xe480x19);
        _0xe480x9 = _0xe480x9['replace']('{b1}', _0xe480xa);
        _0xe480x9 = _0xe480x9['replace']('{b2}', _0xe480xb);
        _0xe480x9 = _0xe480x9['replace']('{b3}', _0xe480xc);
        _0xe480x9 = _0xe480x9['replace']('{b4}', _0xe480xd);
        _0xe480x9 = _0xe480x9['replace']('{b5}', _0xe480xe);
        _0xe480x9 = _0xe480x9['replace']('{b6}', _0xe480x15);
        _0xe480x9 = _0xe480x9['replace']('{b7}', _0xe480x10);
        _0xe480x9 = _0xe480x9['replace']('{b8}', _0xe480x11);
        var _0xe480x1a = $(_0xe480x9)['prependTo']('.table-body');
        $('.item')['each'](function () {
            var _0xe480x6 = $(this)['index']();
            if (_0xe480x6 > 0) {
                $(this)['find']('.top .data div')['eq'](5)['html'](_0xe480x6 + ' min');
                $(this)['find']('.bottom .data div')['eq'](5)['html'](_0xe480x6 + ' min')
            }
        });
        setTimeout(function () {
            _0xe480x1a['find']('.top')['fadeIn']();
            _0xe480x1a['find']('.bottom .data div')['eq'](5)['html']('right now')
        }, 2000)
    }

    $(document)['ready'](function () {
        genDiv();
        setInterval(function () {
            genDiv()
        }, 15500)
    })

    genDiv();

</script>

Note that some functions have “BTC” as part of their name, which suggests that they were originally used for a Bitcoin scam and that the scammers simply reused the script.

At least the coin-ether.net scammers tried to hide their script. The lazy grifters behind ADAIO.online didn’t even put in that amount of effort.

How much have they been able to collect from gullible people?

By pasting the wallet address that ADAIO.online provided on their site at the time of writing (the better scammers know to change wallets often) into Cardanoscan, it appears that they’ve collected about 66,000 ADA in the past five hours. At current prices, that’s just under $125,000, or $25K an hour.

Let me say it again: There’s a lot of opportunity in crypto, but these “give me some of your crypto, and I’ll give you double back” offers ain’t it. Don’t fall for the scam!