Jump to content


Active Members
  • Content Count

  • Joined

  • Last visited

  • Days Won


tjt last won the day on December 15

tjt had the most liked content!

Community Reputation

204 Excellent

About tjt

  • Rank
    Registered user

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. The best programming advice I ever got came to me early in my career while I was working on a system that I simultaneously loved and hated. The cool part of that system was that we were doing computer aided design – think Adobe Illustrator, but for engineers. In those days CAD, with it's interactive graphics was the highest of high tech. The thing I hated was that it was slow, painfully slow: You would sit there and watch the picture appear line by painful line. A simple drawing would take tens of seconds, while displaying something complicated was an opportunity to get coffee. The performance of that system was horrendous even by the standards of the primitive computers we had back then, which is saying something. What was a hacker to do? What would you do? What I did was to dig into the code. Even though the graphics were not my assigned area, I spent some evenings and weekends happily hacking away, trying to see why things were so slow. It didn't take me long to find the problem: When you kicked off that system, you actually started two processes. One process was the CAD system proper, while the second process did all of the drawing. The two programs talked to each other over a socket-like network connection. Apparently the programmer behind the graphics subsystem had fallen in love with client/server style programs and had cooked up one of his own in our CAD system. The rub was that since we were running on such primitive hardware, squeezing all of the drawing down a narrow socket was costing us an order of magnitude in performance, a cost that we were paying for no good reason. I spent the next weekend hacking together a version of the system that packaged everything in a single process. The difference was dramatic. Simple pictures now drew more or less instantaneously while more complex ones would only take one sip of coffee to finish. Monday morning I demo'ed my hacked up version over and over: First to my boss and then to my boss's boss and then to his boss and then to a whole assortment of higher ups. And then all Hell broke lose. Many of those boss's boss's bosses were seriously pissed at me, though no one could or would articulate exactly why. Some of my co-workers started treating me like I had contracted an infectious disease. Slowly, I figured out that I had jumped into the middle of some complex interdepartmental power struggle. In my own clueless way I hadn't sped up the graphics so much as I had supplied a war winning weapon to one organizational faction and the other factions were not happy. Eventually, grudgingly, they did away with the second process along with the socket and we got our faster graphics. Nevertheless elation seemed thin on the ground. That was when the Biggest Boss of All asked me to stop by his office and gave me a key bit of advice. With the door safely closed he turned, looked me square in the eye and said: "In the future, stay the Hell out of other people's code." Actually it was terrible advice, advice that I've gone out of my way to ignore in the years since. But those words were valuable nevertheless, and I've gone back to them time and again. Every time some annoying new-hire comes to me with a dumb idea that is obviously not going to work, Stay the Hell out of other people's code plays back in my head and I listen harder. Every time some other engineer has an opinion about my code, I remember what I thought of the idea that you should mind your own technical business and I try to disengage my ego. In later years, as I found myself building and managing software teams, I've realized that there were probably a dozen programmers on that ancient project who knew why the system was so slow and how to fix it. They knew, but they kept it to themselves because in that organization, there were some things that were more important than making the system better. In the future, stay the Hell out of other people's code. assumes there will be a future. But the best way to have a future is to be part of a team that values progress over politics, ideas over territory and initiative over decorum. Source http://russolsen.com/articles/2012/08/09/the-best-programming-advice-i-ever-got.html
  2. tjt

    Algo Challenge

    Nu e problema rucsacului ? https://ro.wikipedia.org/wiki/Problema_rucsacului
  3. tjt

    Ajutor SQL

    De ce pui ' ' la numele tabelului ?
  4. tjt

    High School

    Da, dar mai sus ai zis ca ai terminat mate-info-intensiv. Daca terminai filologia, mai invatai in 6 luni ? Probabil nici nu auzeai termeni precum "CCNA", "Algoritmica", "Programare", decat in cazul in care aveai o pasiune pentru domeniu. Dar sa fim seriosi, numarul persoanelor pasionate este foarte mic... iar in ziua de azi multi se duc catre IT pentru ca isi pot gasi relativ repede de munca si primesc un salariu decent.
  5. tjt

    High School

    Sounds good, doesn't work. Un liceu de prestigiu iti ofera acces la diverse concursuri, activitati si... ai mai multe sanse sa iei bacul cu o nota mare. In teorie la liceele de prestigiu sunt si cei mai buni profesori/elevi.
  6. tjt

    High School

    Daca te duci la un liceu militar pt ca asta e visul parintilor tai o sa regreti mai tarziu. Da, in momentul de fata in Romania profilul real la liceu e singurul care iti ofera un background astfel incat dupa terminarea lui sa ai toate optiunile disponibile privind facultatea.
  7. tjt

    Inginer automatist

    De asta trebuiesc certificate sistemele sa indeplineasca anumite standarde. Chiar daca modifica cineva 2-3 linii de cod, inainte sa ajunga in productie sistemul, el trebuie recertificat.
  8. tjt

    Awesome Vehicle Security

    In caz de vrea cineva sa se isi "tuneze" masina https://github.com/jaredthecoder/awesome-vehicle-security
  9. tjt

    Ce carti mai cititi?

    Kindle Paperwhite FTW !!!
  10. tjt

    Microsoft Buys GitHub For $7.5 Billion

    Eu observ un pattern in achizitiile lor: 1. Skype - tool de comunicare 2. Linkedin - tool de interconectare 3. Github - tool de colaborare Am impresia ca viziunea lor incepe sa fie 'business oriented' fara sa le mai pese de restul. Prin cele 3 achizitii pot oferi oricarei companii tot ce are nevoie pt a isi desfasura activitatea. Cine stie poate intr-un viitor nu prea indepartat o sa vedem un OS ce le combina /faciliteaza functionalitatile lor.
  11. It's an open secret: Tesla cars are powered not only by batteries but by open-source software. Until recently, though, Tesla hasn't lived up to its obligations under open-source licenses, but now Tesla is finally releasing some of its Linux source code for the Model S and X cars. The Tesla GitHub repository contains the code for the Model S/X 2018.12 software release. Specifically, it holds the system image on the Tesla Autopilot platform, the kernel sources for its underlying hardware, and the code for its Nvidia Tegra-based infotainment system. Tesla will release additional open-source code for other systems in their cars soon. According to Tesla, "Work is underway on preparing sources in other areas as well, together with a more coordinated information page. We wanted to let you know about this material as it is available now while work continues on the other parts." The electric car thought-leader will also update its code as updated software releases are made. You can't build your own Tesla binaries for your car yet though. The Tesla Linux code is still missing source code files and has incomplete build instructions. Tesla has been slowly working with the Software Freedom Conservancy (SFC) to release its code according to strictures of Linux's Gnu General Public License version 2 (GPLv2). SFC leaders Bradley M. Kuhn and Karen M. Sandler wrote: "Conservancy has been engaging with Tesla on its GPL compliance since June 2013, when we advised Tesla that we had received multiple reports of a GPL violation regarding Tesla's Model S. Customers who purchased Tesla's Model S received on-board system(s) that contained BusyBox and Linux, but did not receive any source code, nor an offer for the source." The SFC, and other open-source licensing groups, have been working with Tesla to convince its upstream software providers, NVIDIA and Parrot, to disclose complete, corresponding source (CCS) releases for all GPL'd binaries found in Tesla's Model S. In doing this, Tesla privately provided the Conservancy with multiple rounds of CCS candidates. These source code releases aren't complete yet as required by the GPL. CCS reports have become the standard document of GPL enforcement since 1998. This is the first time though that "circumstances have allowed us to share such a report with the public without violating our Principles." In turn, the SFC has reviewed the "CCS candidates and provided technical feedback on how to improve the candidates to reach compliance. In this process, we provide detailed reports explaining how the candidate releases fall short of GPL's requirements." That's because, Kuhn and Sandler wrote, "This part of the process is the longest, most difficult part of GPL enforcement. We often wish we could celebrate the triumph of moving from a no-source-or-offer violation to the next step of 'incomplete sources provided'. However, we also can't lose sight of the fact that compliance means meeting all GPL's requirements, so we don't convey false hopes with an incomplete release. We must ultimately remain focused on user freedom in our efforts." Still, Tesla has major strides forward in how it treats open-source software. Tesla has elected to publish its incomplete CCS candidates. While the SFC would prefer companies provide adequate CCS immediately, "We realize that this can be a challenging process and recognize that Tesla has struggled for years with upstreams to yield proper CCS. We believe Tesla's new approach also has merit, because it allows the entire community to discuss and contribute in public and collaboratively assist Tesla in complying with the GPL." That said, the SFC knows that "many of you, particularly those Linux-savvy folks who bought Tesla vehicles, have reached high levels of frustration with the lengthy time this GPL compliance effort is taking. Nevertheless, this situation shows precisely why patience is essential for successful enforcement work; it gives us the opportunity to welcome violators to become contributors to the copyleft software community. Our community's history is filled with such success stories." Source: https://www.zdnet.com/article/tesla-starts-to-release-its-cars-open-source-linux-software-code/ Tesla's github: https://github.com/teslamotors
  12. ceva basic: file_changed = false #load data from file for x in ...: if blocked: while not file_changed: #check if file content changed # load new data # set file changed to false # set blocked to false time.sleep(1) #do stuff #when blocked set blocked to true and continue Poti sa iti salvezi intr-un fisier datele de care ai nevoie.
  13. folosesti continue
  14. tjt

    Facultate IT ID

    Nu se uita pe diploma nimeni si nici nu e necesar sa mentionezi in CV faptul ca faci la IF sau la ID. Bagi ceva gen "Student Computer Science, X University". Faptul ca nu ai o diploma e un drawback foarte mare mai ales la nivel de entry-level. Multi de la HR o sa te ignore fara diploma, Diploma iti asigura o invitatie la un interviu, dar restul depinde tot de cunostinte,personalitate, starea de spirit a persoanei cu care stai de vorba, etc.
  15. tjt

    Facultate IT ID

    http://www.idifr.ase.ro/programe-id @horus https://www.4icu.org/ro/ : ...................... 4. Academia de Studii Economice din Bucuresti ...................... 43. Universitatea Titu Maiorescu