Multiple payment methods on a single Apple ID: the improvement and the issue

woman holding card while operating silver laptop

Fotografie de bruce mars pe Pexels.com

Today I used Apple Pay for the first time (it has just become available in Romania): yes, it (just) works (now here too!)

But something else caught my attention while I was setting my cards up on the phone’s Wallet: it seems that with one of the recent iOS (and macOS) updates, Apple finally allows users to also add more than one payment method to any individual Apple ID. Believe it or not, this was previously (e.g. last year or so) not the case!

But there is a caveat with this (otherwise welcome) improvement: you still shouldn’t add cards from both yourself and your company (or any other person) there, assuming that it would be easy to select the appropriate one upon each later AppStore purchase:

You would instead need to ensure your payment methods are reordered as needed before purchasing business vs. personal purpose apps, for example: the first card will be attempted first, and worse, if the first doesn’t work, the second (or a following) will be debited instead. So you must be very careful to ensure the (correct) first one is working if you want the amount to be collected from there – and this is technically impossible (with 100% certainty level!)

Advertisements
Posted in Computers and Internet | Tagged , , , , | Leave a comment

Microsoft wants me out completely?

building clouds facade glass panels

Fotografie de Snapwire pe Pexels.com

Last year Microsoft announced that only the Windows 10 UWP flavor of their OneNote app will eventually be receiving further updates (since 2020). It was reported (but I haven’t verified) that they already removed the classic OneNote app from 2019 installer, and while OneNote 2016 remains available indefinitely , the Windows version will be in the spotlight from now on.

For some people, this looks like a good thing: UWP is the future, right? (I hope not like Windows Phone, though.) And why maintaining duplicate apps?

Myself, however, I really liked the classic OneNote app way more than its (too) light(er) counterpart, regardless of the latter’s shinier look and “trendier” features that, by the way, I’ve never had a use case for.

On the other hand, it seems I tend to use OneNote more on the Web than on desktop. Probably since I was working more on MacBooks than PCs lately, and I didn’t want to install Office there (sometimes to just save some storage space, other times because it was not my computer.)

But analyzing myself using OneNote further, I realized that I rarely use OneNote on PC anyway, and instead it seems I use it more from iPhone or from Mac, through Web.

And then it just crossed my mind: OneNote and ToDo apps were the only ones that truly kept me “Microsofty” in the Apple’s ecosystem (besides Remote Desktop, of course.) I have recently moved from Outlook to Apple Mail on iPhone too, due to performance issues that (again) the shiny Outlook has had for months. So why not just migrate my notes to Apple Notes instead? This app is actually preinstalled on both macOS and iOS and from Windows it can also be accessed through iCloud.com (and it works well even in Edge).

I just did it manually (by copy-pasting) for the most important notes (luckily I didn’t have tons of items), and I’m happier now. (ToDo items were already visible in Reminders, so I could just move them to iCloud as well.)

This way I don’t need to care about the OneNote flavor that Microsoft decided to update in the future. (I could continue to use ToDo, but hey, now it would have been alone.)

Not a good job, Microsoft. I was one of your best friends years ago. I wish you luck with OneNote: maybe teenagers will use UWP, who knows. (Unless Instagram creates a Notes tab somewhere in their mobile app.)

Update: It seems eventually they understood UWP is not the right way. But still, I’m already partially out already. (For me, Redmond may be too late. Again.)

Posted in Computers and Internet | Tagged , , , | 2 Comments

Perspective shifting

… was the key to understand that:

  • the Earth is round;
  • it orbits the Sun;
  • our star is not the center of the galaxy;
  • our galaxy is not unique in the universe.

And it will probably be also needed to:

PS: We can only hope it’s not an infinite loop till there. 🙂

Posted in Miscellaneous | Tagged , , | Leave a comment

Priorități

Am citit azi un post ce îndemna la următoarea prioritizare (pentru anul care vine, de exemplu):

  1. sănătate;
  2. familie;
  3. finanțe;
  4. carieră.

Sunt de acord cu ordinea dată (și realizez că pentru primul punct – cel puțin din punct de vedere al prevenirii problemelor – cred că trebuie să lucrăm cel mai mult, mai ales dacă suntem comozi, dat fiind și că încă sunt limitate informațiile științifice care să indice un mod de viață sau altul ca fiind optim în această privință), dar vreau să adaug (for reference purposes only, căci știu că așa e, de fapt, normal) că trebuie acționat pe toate planurile în paralel, prioritizarea fiind doar o chestiune procentuală zilnică. (Și cred că e greu, dar se poate, oricine am fi și orice meserie am avea.)

Cred, de asemenea, că și la nivelul statului prioritățile ar trebui să fie similare:

  1. sănătate;
  2. educație;
  3. investiții;
  4. servicii.

Doar că îmi e clar că, pe termen scurt cel puțin, la nivelul unei țări ca România e nevoie ca procentele să fie inversate: e nevoie de servicii și infrastructură (autostrăzi!) excelente pentru a crește investițiile și avem nevoie de multe investiții care să aducă bugetul la un nivel care să ne permită să ne aplecăm asupra educației și a sănătății populației cu suficientă “atenție”… (Și nu cred că se poate invers în context macro!…)

Posted in Știri și politică | Leave a comment

Tineri programatori,

pe asta eu n-am crezut-o pe vremea mea. Și deci nu mă aștept s-o credeți nici voi, dar postez ideea (sugerată inițial aici) pentru că există totuși o șansă să ascultați mai mult de “sfatul bătrânilor” decât a făcut generația (X?) din care fac eu parte: 🙂

inteligența extraordinară (singură) vă va ajuta în domenii pure precum matematica; în programare însă, ca în orice tip de inginerie, este nevoie și de experiență (sau, alternativ, de fler ori de noroc chior?) pentru a putea balansa suficient de bine frumusețea codului la read time vs. performanța sa la runtime.

Acceptați așadar și joburi de developer “secund”, chiar dacă v-ați dori de la început să fiți mare creator. (Dacă puteți, desigur; probabil asta depinde mult de personalitate. În caz contrar, ce să zic, dezvoltați-vă – habar n-am cum – intuiția și/sau… good luck!)

working woman technology computer

Fotografie de Startup Stock Photos pe Pexels.com

Posted in Computere și Internet | Tagged , , | Leave a comment

Altă întrebare

Constituția stipulează la art. 48 că “familia se întemeiază pe căsătoria liber consimțită între soți, […]”, iar în DEX (așadar în limba română, respectiv cea a legii fundamentale), soții – la plural – sunt definiți a fi “cele două persoane de sex opus unite prin căsătorie.”

Mai mult, Curtea Constituțională a validat suplimentar (și fixat) definiția cuvântului “soți” de mai sus; iată un extras relevant din Decizia CCR 580/2016:

“Prin înlocuirea sintagmei «între soţi» cu sintagma «între un bărbat şi o femeie», se realizează doar o precizare în privinţa exercitării dreptului fundamental la căsătorie, în sensul stabilirii exprese a faptului că aceasta se încheie între parteneri de sex biologic diferit, acesta fiind, de altfel, chiar semnificaţia originară a textului. În anul 1991, când Constituţia a fost adoptată, căsătoria era privită în România în accepţiunea sa tradiţională, de uniune între un bărbat şi o femeie. Această idee este susţinută de evoluţia ulterioară a legislaţiei în materia dreptului familiei din România, precum şi de interpretarea sistematică a normelor constituţionale de referinţă. Astfel, art. 48 din Constituţie defineşte instituţia căsătoriei în corelaţie cu protecţia copiilor, deopotrivă «din afara căsătoriei» şi «din căsătorie». Este evidentă, deci, componenta biologică ce a fundamentat concepţia legiuitorului constituant în privinţa căsătoriei, fiind fără îndoială că aceasta a fost privită ca uniunea dintre un bărbat şi o femeie, câtă vreme numai dintr-o astfel de uniune, indiferent dacă este în căsătorie sau în afara ei, se pot naşte copii.”

În aceste condiții mi s-ar părea firesc să avem o discuție despre oportunitatea unui referendum pentru a schimba cu adevărat definiția familiei, permițând și persoanelor de același sex, ori unui alt număr de persoane (diferit de 2) să formeze astfel de asociații.

Alt referendum, cu altă întrebare: una care să merite, eventual, efortul unui răspuns.

photo of women s hands

Fotografie de Zun Zun pe Pexels.com

Posted in Știri și politică | Tagged , , , | 1 Comment

12 ani

woman jumping while holding four balloons

Fotografie de Crina Doltu pe Pexels.com

Astăzi se împlinesc 12 ani de când s-a vândut prima licență software pentru un produs realizat în cadrul firmei pe care am fondat-o în 2004!

Încă-l mai avem în listă – pur și simplu pentru că încă sunt clienți (developeri) care-l doresc. Oferim, desigur, alternative moderne (și – spoiler alert! – lucrăm intens la ceva și mai și), dar primul nostru Gantt Chart (the original ProjectView) pentru WinForms poate rula fără probleme chiar și în aplicațiile WPF bazate pe cel mai recent .NET Framework (4.7.2), grazie Microsoft – their backwards compatibility is absolutely great!

Dar nu ca să fac reclamă am postat acest articol azi, ci cu speranța de a oferi, eventual, puțină inspirație cuiva, dacă ar avea vreodată nevoie. Mai bine v-aș povesti, așadar, câte ceva din perioada de dinainte de acești cei mai recenți 12 ani; de fapt chiar puțin mai de demult: din viața “anterioară”, de programator “for fun”.

M-am gândit deci că, deși din păcate nu mai am source code-ul și nici executabile pentru programele listate mai jos (cel mult mă pot baza pe câteva persoane-martor ca să demonstrez că ele chiar au existat), ar putea fi interesant să indic o serie aplicații pe care le-am “envision-at” și le-am scris folosind tehnologiile disponibile prin acea perioadă. (Postându-le aici, mă asigur și că nu le uit nici eu de tot.) 😉

1. “Compilator” de scheme logice

Scris în Pascal folosind mediul de dezvoltare cu nume de Porsche (“Turbo” Pascal), oferea o interfață grafică simplă (pentru ecran EGA de 16 culori) ce permitea definirea unor scheme logice plasând pur și simplu cu mouse-ul (chiar dacă nu încă cu dragging) blocuri de diferite tipuri, precum startsetinput, check, sau stop, plus săgeți de legătură, într-un grid pe ecran și completându-le apoi cu “bucăți de cod” introduse de la tastatură și afișate în interiorul shape-urilor de pe ecran.

Când erai gata și aveai diferite “căi de rulare” de la start la stop se făcea o mini-validare iar apoi… se genera (foarte simplu!) un program .pas într-un fișier temporar, conținutul fiind bazat pe schema ta, fișier ce era apoi compilat cu TPC.exe către un executabil de asemenea temporar, iar acesta din urmă rulat, în final, automat, într-un proces separat.

Nu era deci un compilator propriu-zis, nu genera direct cod mașină, dar dacă vedeai sistemul ca pe un black box – funcționa întocmai ca un mediu de dezvoltare cu compilator inclus!

(L-am scris prin clasa a 9-a și l-am prezentat – oh my! – la o așa-zisă “sesiune de comunicări științifice”, la Hunedoara. “Let the beat Ctrl-F9!”)

2. Educative: optică geometrică

La fizică în clasa a 11-a, parcă, am învățat câte ceva despre optică: lumină, oglinzi și reflexie, lentile și refracție. Cam în acea perioadă vedeam și eu Windows (3.1) pentru prima oară: sistemul de operare devenea grafic, aplicațiile deveneau event driven (dar puteau fi scrise totuși în continuare în Pascal – exista deja Borland Pascal for Windows, apoi a venit și Delphi!) Așa da, faină viață! Am putut scrie deci rapid o mini-aplicație Windows pentru școală pe care cred că am și prezentat-o profesoarei de fizică:

aveai un obiect vertical undeva în mijloc, apoi puteai așeza, oriunde pe orizontală (cu mouse dragging de această dată!) o sursă de lumină, un element cu rol de ecran, dar și lentile și oglinzi concave sau convexe de diferite înălțimi (de fapt distanțe focale) pentru a vedea ce se întâmplă: cum se vede oare obiectul în urma trecerii luminii? Totul era live, adică în timp ce mutai o lentilă (de exemplu) umbra de pe ecran devenea mai mare sau mai mică, în funcție de distanțele dintre obiect și lentilă, respectiv lentilă și ecran, de distanța focală a lentilei respective ș.a.m.d.

(Similar, am scris ceva mini-app și pentru chimie la un moment dat, dar chiar nu mai știu despre ce era vorba, nici măcar dacă era pentru organică sau anorganică…)

3. Jocuri

Apăruseră deja și jocurile pentru Windows – precum foarte simplul, dar mult jucatul Columns, care însă avea și un mic bug și uneori crăpa de-ți pierdeai toate punctele fără să fi greșit tu – dacă venea o coloană cu un anume set de culori și jos aveai blocurile aranjate într-un anume fel – așa că m-am gândit să scriu și eu unul, mai “jmeker”. Rezultatul a fost Fă 3. Un joc similar cu Columns, doar că de sus veneau seturi de 3 bile în loc de 3 pătrate, iar acestea “curgeau” în partea de jos, nu se așezau ca la Tetris, dar dispăreau tot când erau câte 3 de aceeași culoare. (Câtă distracție a adus vizitatorilor noștri!)

Dar am scris și jocuri cu cărți – fain era Solitaire, așa că trebuia să “scot” și eu ceva; folosind pentru prima oară imagini bitmap (reprezentând “culorile” cărților de joc): Șeptică americană a fost o simulare exactă a jocului cu doieri și șeptari, practicat împotriva computerului; apoi încă unul, gen Video poker, dar mai special: după ce câștigai “jetoane” puteai să ți le dublezi sau să le pierzi cu totul dacă nimereai, respectiv nu nimereai culoarea unei cărți trase la întâmplare din pachetul rămas (de maximum 7 ori, parcă, la sugestia tatălui meu.)

4. Productivity: cheltuieli la bloc

Pe vremea când abia auzisem de Excel era mai simplu să scriu algoritmi de calcul pentru sumele de plată per apartament, în funcție de metri pătrați sau de numărul de locatari, distribuite corect pe scări și considerând diferite excepții (precum “neracordații”), așa cum ar fi fost nevoie la administrație, în Basic. Visual Basic 6, dacă nu greșesc.

(Mai târziu, precursor al lui Visual Studio, mi-a plăcut și am folosit mult și Visual J++; înainte de C#Java a fost “tatalor” din punctul meu de vedere, inclusiv pentru a dezvolta aplicații Windows!)

5. Diverse

În această secțiune aș putea include, de exemplu, primul meu “Paint” (sau cum l-oi fi numit) în GW-BASIC, în care mișcai un cursor de tip punct cu tastele săgeți, iar cu spațiu schimbai starea: apăsat – lăsa dâre colorate, respectiv neapăsat – nu lăsa/ștergea punctele peste care trecea. Iar tastele de la 0 la 9 alegeau culori dintr-o paletă fixă.

… Plus altele asemenea, dar nu mi le mai aduc aminte bine. (U-u, ce vremuri! În orice caz, pe atunci lumea cam râdea când susțineam că-n viitor voi fi programând… pe bani!…) 😀

6. Lista se încheie aici, dar ghiciți voi ce făcea programul ăsta de final

Iată pașii de pseudo-cod care se executau la rularea executabilului pentru MS-DOS care-l conținea – dacă bine-mi amintesc, scris fiind în C++:

  • Uneori, alege la întâmplare un fișier F de tip .exe, altul decât cel care tocmai rulează (P), din directorul curent, dintr-un subdirector (dacă există), din directorul părinte (dacă nu cumva procesul curent rulează din rădăcina unui disc), sau dintr-un alt director din cadrul aceluiași părinte;
  • Dacă s-a ales un fișier F, citește B = array de N bytes din fișierul P.exe asociat procesului curent (N este o constantă determinată empiric);
  • Dacă primii maximum N bytes ai fișierului F sunt diferiți de array-ul B, deschide acel fișier F în read-write mode și inserează conținutul B la începutul său, păstrând restul intact (utilizând eventual un fișier temporar pentru intermedierea operației); dacă este imposibil de citit sau de salvat fișierul F modificat, nu afișa nicio eroare;
  • Citește R = restul de M bytes, sărind peste primii N din fișierul executabil P care tocmai rulează;
  • Dacă M > 0, scrie baiții R într-un fișier temporar cu nume ales la întâmplare T.exe în directorul curent (verificând în prealabil că un asemenea fișier nu există deja, altfel încercând alt nume aleatoriu), rulează executabilul respectiv, iar la sfârșit șterge definitiv fișierul T pentru… a nu da de bănuit.

Nu vă speriați: n-am distribuit niciodată acest ultim program, nimănui, doar câțiva apropiați l-au văzut, și numai pe 386-le meu. 🙂

Posted in Hobby-uri | Tagged , , , | Leave a comment