22 December 2022

tabnine AI code completion

 In contrast with some popular AI coding tools like chatGPT and github copilot, tabnine offers offline code completion in its enterprise mode. 

Tabnine's free mode only offers online oneline (yes, those are two different words) completion, the PRO version is $12/month/user and for the enterprise version you need to get a sales quote.

When assessing someone's programming skills by having them write some code, you might actually be hiring a lot of AI's. 

That is not necessarily a bad thing, nobody is writing assembler any more, and that is not considered cheating. But you may need to adapt the level at which you are assessing candidates.

Your code is better than AI code

A recent survey shows that AI generated code contains more bugs than code written by humans. This is somewhat surprising, given that AI code is probably generated from code

  • that is better tested than the code you're just writing (supposing the surveys were done on fresh code)
  • that it is generated from code from people who have more experience on the topic then you (supposing that a lot of the code is by experts and you are often on a learning path with a new technology). Again not sure if this was tested in the study.

Whatever the current state, AI will get better at this...

15 December 2022

Pasting rich text to MS OneNote

Pasting rich text to MS OneNote from some applications (like JetBrains IntelliJ) loses all spaces.

Example:

background:#ffff99url('../images/cat.jpg')no-repeatfixedcentercenter;

You can of course choose to paste text only (CTRL + SHIFT +V), which will keep spaces, but loose formatting :-/ 

Example:

background: #ffff99 url('../images/cat.jpg') no-repeat fixed center center;

Solution

Install the OneMore OneNote plugin.Now you can past with CTRL + ALT + V, to get what you want:

background: #ffff99 url('../images/cat.jpg') no-repeat fixed center center;

With the plugin you get a slew of other handy One Note functions like Find and Replace (!), modifying tables...

1 December 2022

Intellij 2022.3 highlights

 JetBrains just release its quarterly update to its flagship IntelliJ IDE. 

Highlight is a new UI preview, which gives the tool a simpler, VS Code like look. It is probably intended to make the community more familiar with the looks of the next generation Fleet API. Underneath the general overhaul, many of the second level structures remained the same, so the new UI quickly feels familiar and all your keyboard shortcuts still work.

Additionally we get support for:

  • a action that generating code for autowiring beans for containers like Jakarta EE and Spring. When using a class that can be autowired, IntelliJ will add an attribute and initialise it through constructor injection
  • easier OpenAPI definition generation
  • library name/version completion when adding Gradle dependencies
  • Jakarta EE 10 support
  • HTTP client improvements
  • Better Vue component support

JetBrains also released a preview of a testing tool: Aqua.There is also an Aqua plugin for IntelliJ, which I needed to install to work with Cucumber. So, it looks like they factored out testing functions in a plugin and built a more focussed product targeted at testers around it, like they did with WebStorm for web development.