Tag Archives: ORM

Our Presentation at SOFSEM 2020

A preface: as it usually happens with my favorite topic, neither database conferences, nor software engineering conference acknowledge that kind of research. Thereby, when although the paper got accepted, it was accepted as a short paper (because nobody understood what it was about :)).

Moreover, two days before the conference we were asked to shorten the presentation to 15 minutes. Fortunately for me, there was one no-show at our session, so I was able to present in full. Below is a full presentation version including two slides which were not in today’s presentation.

NORM – SOFSEM2020

2 Comments

Filed under events, talks

Introducing New Term

I’ve been thinking for a while how to name our methodology of data exchange between databases and applications. Several years ago, we came up with the term HDAT – Holistic Database Application Tuning.

This term didn’t get much recognition, partially because I didn’t really like it myself. It is pretty vague and implies that the subject we are talking about is something “nice to have” rather than entirely new technology.

In an attempts to highlight the most important feature of this technology – the fact that it eliminates a need in any ORM – I came up with the term which I am going to introduce today:  NoRM.

The letter ‘o’ stands for both ‘No‘ and ORM, to avoid double ‘o’ and any possible associations with “Noom”:). Also, it highlights the fact that this approach is natural, that this is “a new norm.”

From now on, I am going to call “this JSON thing” a NoRM approach or NoRM technology.  

How do you feel about it? Do you like this term? Will you use it?

1 Comment

Filed under Systems

About My Nomination, And How To Vote

First of all, a big THANK YOU to everybody who reached out congratulating me for becoming a finalist in the “Technologist of the Year” nomination. This nomination is especially important for me, because I’ve always strived to apply the best CS theories for the success of the business. I do not believe in approaches, which can’t be used in practice. However, I think that applying the right theoretical principles in the industry can have a tremendous impact.

Another aspect important to me is that all my innovations are related to PostgreSQL. If I were asked to name the three most important things which I’ve introduced at Braviant Holdings, it would be

  • The wide usage of FDW both in OLAP and OLTP
  • The usage of pg_bitemporal in both OLAP and OLTP
  • Abandoning ORM and using JSON -based data exchange between applications and databases

There is more in my blog about all of the above, but what I want to point now – each of these Top 3 is about using PostgreSQL in an innovative way.

The award descriptions say:

Presented to the individual whose talent has championed true innovation, either through new applications of existing technology or the development of technology to achieve a truly unique product or service.

Isn’t it precisely what I just said :)? Do I want to win? Absolutely! Do I think I can win? Yes! Can you help me :)?…

Several people reach out to me, telling me that they have difficulties casting their votes. I agree that the voting process is at least contra-intuitive. So let me explain it step by step.

First, you go to that link.

Then, click where it is said to CREATE LOGIN. It says that you can login with your Facebook account, but this does not work. So you will need to create a login. After that, you need to click on the large grey “Like” on the very top. Wait for a response to make sure your vote is counted.

Also, there are SHARE buttons, and unfortunately, the most important one – Share on LinkedIn – does not work. Others work fine, so you can help me by sharing with your network 🙂

And one more thing – this voting is only opened till August 16, so please don’t delay 🙂

Once again – THANK YOU!

2 Comments

Filed under events, news, Systems

DB developers and App developers

Last week when I was at the PG Conf in New York, I met with my former co-worker, with whom we worked together while being on the New York Department of education project. She was a Java developer, and I was an Oracle developer.  I was implementing a solution, which was very close to the idea I am implementing now – building Oracle packages for each application endpoint, so that an application could only call functions, not separate SQL statements. Our collaboration was not always easy and peaceful those days, and when I was describing to her the specifics of the work we were presenting, I told her: see, if I would return to you the same type of objects back then, you won’t have any trouble with me!

She replied: Oh yes,  if that would be the case, I wouldn’t have any trouble with you! And the way she’d said that reminded me that she indeed had some troubles with me back then… And I thought to myself, that perhaps it’s not only the team I work with now is better than any other team I’ve worked with before (though it is still the case :)), but also that I myself had changed. And now I am way more flexible and willing to walk this extra mile, than fifteen years ago…  and our success is a product of collaboration, of everybody being able and willing to work together to find the right solution.

Leave a comment

Filed under People, SQL, Systems

Braviant Holdings talks at 2Q PG Conf

Better later, than never: by popular demand here are the videos of both talks from Braviant Holdings, presented at 2Q  PG Conf. Enjoy 🙂


 

Leave a comment

Filed under Companies, events, talks

PG Open 2018

For some reason I feel like there were less announcements this year about the upcoming PG Open. But now it is fast approaching: it will take place Sep 5-7, in San Francisco, at the Parc 55 Hilton hotel – same as the last year.

I will be presenting again, however I do not feel it as “again”. Some of my peers were telling me that they are so sure my talk will be accepted – they can’t even understand why I may be anxious. But for me this year was especially challenging. The workload was huge, partially objectively, partially because of the ambitious goals I’ve set for myself, and partially because of the health issues I’ve being dealing with for the past several months.

This being said, I am really happy that our talk was selected to be presented at the PG Open. And another reason to be happy – after three years gap I got back to my favorite topic of ORIM, and I am presenting together with an app developer – my coworker Alyssa Ritchie. Almost back to the old days, but better :).

And the Early Bird registration is still opened – please check out the conference web site!

Leave a comment

Filed under events, publications and discussions, talks

February Chicago PUG – what the conversation was about

It’a almost time for our March PUG, and I never blogged about the February one, I guess now it’s as good as any other, especially because  the March PUG is just several days away, and as usual I hope to attract more people to our next event

As for the February PUG,  I really liked it, even though I managed to completely mess up and accidentally cancelled the meetup! I am still not used to the new Meetup editor. Nevertheless, perhaps it was even better, that I’ve made people to re-confirm their participation at the last minute.

I was presenting our most recent work –  a new framework for efficient communications between a database and a web application. My favorite topic; and I was super -excited to share our success. And I was very glad, that one of our application developers decided to stay for the PUG, because very soon all the questions merged into one big question: what did you do to make it happen? What did it take to change the developers mindset? How did we pull it all together?

And my coworker started to describe, how we did it. And I’ve realized, that I almost forgot about many obstacles, which we had overcome. How many things didn’t work from the very beginning. How many “extra miles” we had to walk in both directions.

Answering the comments on one of my previous posts on that topic: it’s just not so easy to write a “matrix” of decisions which would automatically replace the ORM. Most of the time it’s a customized development. If an app developer would always know that method A involves three joins on a database side, and method B pulls the attributes from the same table as  method C… then probably they won’t start using ORM from the very beginning. But the purpose of ORM is to hide these details!

It’s not easy to do things differently, Especially in a small startup. With all the deadlines, and with clear understanding that there is a potential slowdown in development. But we all tried to do the right thing – as a team. I give a credit to myself for coming up with a framework which at the end of the day is easy and convenient to use in the application. And I give even a bigger credit to the whole team for willingness to work through all the issues toward the best solution.

My fellow chicagoans! If by now you feel sorry you missed the February PUG – please consider coming to the March PUG upcoming Wednesday!  Johnathan Katz from Crunchy Data  will be presenting the talk “An Introduction to Using PostgreSQL with Docker & Kubernetes”. We expect another “bridging the gap” event 🙂

Leave a comment

Filed under Companies, Team and teamwork