HNHacker News
TopNewBestAskShowJobs

thibautg

1,686 karma · joined September 27, 2017

meet.hn/city/50.40452,4.44314/Charleroi
submissionscomments
thibautg··on The Splitgraph Data Delivery Network – query over 40k public datasets
It's fixed now, thank you!
thibautg··on The Splitgraph Data Delivery Network – query over 40k public datasets
Same issue with DBeaver 7.1.5 on Windows 10. I've sent an email to support@splitgraph.com.

Congrats on the product BTW. Very promising!

I've been looking forward to something like this for years.

thibautg··on Ask HN: What's the worst piece of software you use everyday?
TrustArc cookie / GDPR / tracking popup. It is filled with all the possible dark patterns.
thibautg··on Ask HN: Side projects that are making money, but you'd not talk about them?
I made around 2 k€ with a celebrity pics website, in the late 90s, just before the explosion of the internet bubble.

I misspelled the celeb's name and my site was the 3rd result on Altavista when other people made the same spelling error. I put a counter and saw a lot of visits, so I added some banner ads.

A few weeks later I got a nice paper check that I converted from French Francs to Belgian Francs in the bank. It was before the EUR!

It was nice to have some pocket money, but I've always been ashamed of this site. 20 years later, I'm starting to think that it was kind of cool... It's still on archive.org!

thibautg··on Ask HN: OCR framework for extracting formatted text?
Cool I've done exactly the same with ocrmypdf! With a Django web app to search through the scanned documents (around 30k documents and 200k pages).
thibautg··on Learn D3
A custom directive in a Vue template[0], is quite similar to your example with an inline expression in an hypertext literal. Maybe a little less elegant. But d3.select is still needed to select the bound dom element ;-)

[0] https://stackoverflow.com/questions/48726636/draw-d3-axis-wi...

thibautg··on Learn D3
I’ve tried to use d3 without importing d3-selection (in Vue) but I still need it for d3-axis. Would it be possible to make d3-axis more DOM-agnostic?
thibautg··on Distinct on: a confusing, unique and useful feature in Postgres
DISTINCT ON is also very useful for nearest neighbor queries with PostGIS.
thibautg··on Launch HN: Castodia (YC W20) – Populate Google Sheets from databases
How is it different than an Excel sheet with external data from a ODBC connector?
thibautg··on Introduction to D3
I haven't run benchmarks but I also haven't noticed a difference in performance.

With Vue.js, I use computed properties + v-for in html template.

With D3 I use the the enter/update/exit pattern with d3.selectAll(...).data(...).join(...).

Both seem to only modify the needed DOM elements. Vue.js uses a virtual DOM while D3 attaches a __data__ property to DOM elements.

thibautg··on Introduction to D3
I also mostly use d3 for its powerful helper functions nowadays: scales and axes, colors, svg path generation, geographic projections, array functions like d3.group (formerly d3.nest), csv/tsv parsing etc.

I tend to leave DOM manipulation to Vue.js unless I need to animate transitions between states. I find it easier to reason about binding data to an html/svg template with Vue than to mess with d3 data joins and enter/update/exit pattern.

d3 is and stays an impressive piece of work.

thibautg··on No, that dot in the domain name of the URL is not a mistake (2004)
I get the following error when I add a dot at the end of the address for a virtual host in Apache:

Misdirected Request

The client needs a new connection for this request as the requested host name does not match the Server Name Indication (SNI) in use for this connection.

Apache/2.4.25 (Debian) Server at example.com Port 443

thibautg··on Why is everyone a bank?
My European credit card works around the world but is blocked by default in the US for security reasons.

I need to call my bank to temporarily unlock it if I ever go to the US. Payments with PIN code are allowed by default though even in the US. So the problems seem to be with the swipe system.

thibautg··on Google cancels TGIF weekly all-hands meetings
300k is average?

That’s more than the ceiling for CEOs of public companies in my country.

Tech salaries in the US really seem out of proportions.

thibautg··on Ask HN: Which stack will get my MVP API off the ground fastest?
Apache + mod_wsgi
thibautg··on Amazon’s Consumer Business Turned Off Final Oracle Database
Thanks I’ve sent this comment to our DBAs. Very useful.
thibautg··on Tools I Recommend for Building Geospatial Web Applications
Same. I use Flask because it's one of the lightest frameworks I could find. GeoJSON can be generated on the fly by PostGIS with very good performance. So Flask is just used as middleware to submit the query from URL params to PostgreSQL.

For the front-end I usually use Leaflet with Mapbox (raster) tiles. I should switch to vector tiles but "@2x" raster tiles look good enough on HiDPI/Retina displays.

I'm also an heavy QGIS user. I've managed to convince IT to put it in our internal Software Center so users can install it in one click without needing to be admin. It's becoming quite successful internally ;-). Take this Esri!

However we still pay hundreds of k€ to Esri and nothing to QGIS. I've personnally donated a few euros but it's a really small amount compared to what we pay to Esri.

thibautg··on How to learn D3.js
Your article is very impressive, really good work!

These days I also tend not to use d3 for DOM manipulation, but only for its powerful helper functions (d3-scale, d3-array, d3-shape, d3-geo etc.)

I even try not to import d3-selection except for very specific cases.

I’m using Vue for DOM manipulation, and computed properties play very well with d3 helper functions (i.e. a scale which auto-updates itself reactively). In a way it’s very similar to ObservableHQ’s reactivity. Most examples from Observable can be relatively easily converted to Vue with computed properties.

thibautg··on Multiplayer Deck of Cards
That's an awesome domain name! I've tried house.of.cards and it redirects to deck.of.cards ;-)
thibautg··on Ask HN: Was data science just hype?
What is the definition of “Engineer” in “Data Engineer” and “Machine Learning Engineer”? And what is the difference with “Scientist”.

I’m not from the US and in my country, “(civil) Engineer” is a legally protected title https://en.m.wikipedia.org/wiki/Civil_engineer#Belgium

thibautg··on Serving Vue.js Apps on GitHub Pages
I’m using the deployment method to the gh-pages branch documented on Vue CLI’s website [0]. Works pretty well.

[0] https://cli.vuejs.org/guide/deployment.html#github-pages

thibautg··on Foundations of Databases (1995)
There is also a Red Book for audio CD (Compact Disc Digital Audio): https://en.wikipedia.org/wiki/Compact_Disc_Digital_Audio
thibautg··on Alstom and Siemens Show How Not to Deal with China (and Vestager)
I once spoke with some Alstom director. He told me that contracts with China required giving away their intellectual property. And they did not have that many other contracts outside China.

I asked him if they weren’t shooting themselves in the foot. He responded: “I can either fire everyone now or in a few years, what would you chose?”.

I’m glad I don’t have to take this kind of decision.

thibautg··on Condé Nast to Put All Titles Behind Paywalls by Year-End
https://outline.com/8Da2Ta
thibautg··on Applying programming language research ideas to transform spreadsheets
The ideal spreadsheet should be a mix of Excel, Geogebra, reactive Jupyter Notebook (like ObservableHQ or Vue.js computed properties), programmable in Python, C#, JavaScript and/or other languages with the ability to embed third-party widgets like maps or custom charts. And decent data connectors with SQL-like query syntax (including JOINs).
thibautg··on Who is horse_js?
It seems that the date format is not correctly recognized by moment.js. There is a warning in the console.
thibautg··on Who is horse_js?
The layout is completely broken in Edge too. They must have forgotten that it does not use the Chromium engine yet.

Too bad for a (fun and clever) Microsoft advertising.

thibautg··on The Endgame for LinkedIn Is Coming
People’s time and attention
thibautg··on FizzBuzz in ten languages
FizzBuzz in Coconut looks similar:

  def fizzbuzz(n):
      case (n % 3, n % 5):
          match (0, 0): return "FizzBuzz"
          match (0, _): return "Fizz"
          match (_, 0): return "Buzz"
      else: return n |> str

  (
      range(1, 100)
      |> map$(fizzbuzz)
      |> x -> '\n'.join(x)
      |> print
  )
thibautg··on Ask HN: What technologies did you learn in 2018?
In the beginning of the year I compared Vue.js, Angular and SAP OpenUI5. I chose Vue.js for its simplicity, performance, documentation and underdog status. I still need to learn React.

During the summer I also took the "CS50's Web Programming with Python and JavaScript" class on edX. It taught me about Flask and Django.

Since then I've made two apps for work:

- one is a data visualization to coordinate railway infrastructure works using Vue.js/D3.js and an API made with Flask

- the other is a standard (server-side rendered) Django app. It is a search engine for scanned PDF documents. There are also scripts to extract text from documents using OCR with ocrmypdf based on tesseract. The text is then loaded in a PostgreSQL database to make it full-text searchable. There are 30k documents and 130k pages.

Both apps are currently running on my company's internal OpenShift cluster so I also had to learn OpenShift, Docker, Kubernetes...

Since September I'm back at the university every Monday for an Executive Master in Datascience. I'm currently learning machine learning (using Python, scikit-learn, numpy/pandas, matplotlib, tensorflow etc.), graph mining and data visualization. Here is our dataviz project: https://ufo.kediss.eu based on the UFO sightings dataset on Kaggle. I'm currently studying for the exams in January.

← PreviousPage 2 of 4Next →