1. -2

    I posted this on reddit and surprisingly I wasn’t downvoted. ;)

    1. 14

      I just launched my first big side-project: https://forlater.email — an email-based bookmarking service! Going to add some more features for it over the weekend, and write up a quick blog post on the technical details behind it.

      1. 1

        Congrats

        1. 1

          Looks pretty cool!

        1. 2

          Well this will work only temporarily.

          1. 1

            I still have those David Ahl books. ;)

            1. 2

              Working on my library https://github.com/sproket/Persism

              I found a couple of good bugs today and added a bunch of TODOS. ;)

              The bugs relate to the newer 2.0 API

              1. 2

                Oh, nice! I’ve been looking for a JVM-equivalent to Dapper; this seems to fit the bill extremely well. I’ll give it a shot literally today for some stuff I’m working on.

                1. 1

                  Thanks! Let me know what you think.

                1. 2

                  Looks interesting. It is always good to have lightweight choices to the heavyweight frameworks like hibernate.

                  I find jdbi.org worth a look too.

                  1. 1

                    Thanks. Yeah jdbi is useful.

                  1. 1

                    Why are we still trying to do this? Like, this time it’s going to work out? Forgetting the facts of the fundamental mis-match, the bad habits of conflating relationships between objects (and tables) as ownership/properties, and partially-hydrated objects that lie about their types, everybody’s schema (and migration strategy) is a unique snowflake and one size most definitely never fits all.

                    1. 4

                      Persism aims to be a low friction alternative to the more complex/larger ORMs that exist like JPA/hibernate etc… It’s a small jar with zero dependencies best used for utils or games. (Though I use it for “real” apps too).

                      Persism will throw an exception if you have an object not completely initialized (if you select less columns that your POJO has properties).

                    1. 3

                      I balked at using an ORM for many years. I think my first attempts were with NHibernate and then Django. Having to effectively write the schema twice – once in migrations and once in record types – always felt like lost productivity. I already had integration tests that flex the schema enough to feel confident, regardless of any ORM use. When I started using Rails I finally started appreciating the ORM. I ended up with fewer bugs because my focus had to remain on the application code being compatible with the actual schema (instead of my record types, which could be lying to me). Seeing the same schema-as-truth approach in a java ORM is pretty exciting for me.

                      1. 1

                        Thanks.

                      1. 11

                        One of my most used non-obvious features of IntelliJ-based IDEs is Local History; basically a permanent undo history of a file, with a diff viewer for each change. It’s not always the most convenient (or reliable), and I often still end up doing the undo/redo thing mentioned in the article, but it comes in useful often enough when I need to look at something from 5 minutes (or days) ago that I didn’t anticipate needing to look back on.

                        1. 3

                          Yes! I’m amazed this is not in Visual Studio. IntelliJ just saves your changes all the time and you can go back 5 minutes. I don’t need it often but it’s a life saver.

                          1. 2

                            Eclipse had the same feature since I remember - in times very useful indeed.

                            1. 1

                              wow, TIL!

                            1. 1

                              This looks like a great project! I still have that book on my shelf.