Posts

Showing posts from March, 2019

penguingV Enhancement. Deploy

Image
Sending PR     Big game, big play, big problems, big solutions. Here we came to the point when "good-first-issue" is not good enough for us, and working on something of higher scale looks much more intimidating  exciting!      In my last post  I described the issue I was working on, so let's jump to the solution.      The above is the screenshot of the proposed solution to templating the EdgeDetection class. Previously, the class was using "Point"s  based on "double" values (double x, double y). The proposed solution uses "T" as a generic type instead of hardcoded "double" and "PointBase2D<>" template instead of "Point2d" type based on "double".     Previously, the class' implementation was separated among ".h" and ".cpp" files, and because implementation code for some of the functions was relatively long, I decided to keep the way of things as they wer

penguingV Enhancement

Good ol' C++ and Image Processing     The issue that was listed in penguinV 's repository asks for a slight improvement on their already implemented EdgeDetection()  algorithm, which currently works with double  values. The improvement must template the algorithm so the work can be done with 'float's as well.     Well, templating the class with all of its methods is not that hard, separating headers ( .h ) from implementation ( .cpp ) of a templated class is not that tricky (by the way, I have recently found a beautiful tutorial on how it can bee done in 3(!) different ways), but making sure that at the time of comparison/assignment of a double  to int  (and vise-versa) the data won't be truncated because of differences in bit sizes - that can be a bit time-consuming. As of now, the algorithm uses uint32_t  (unsigned 32-bit integer) as its integer type to be able to hold/pass data from/to double  variables (truncating decimals, obviously), but with switch to f

Deep Into Issues

Image
In search of the best bugs     I've been looking for a couple projects that I might be able to contribute to. Time period - 2 weeks for each. Level of difficulty - intermediate. Excitement - beyond limits.      After a couple of decent hours spent on looking for no less decent projects to work on, I decided to come back to the one that I have already worked on - penguinV  (you can read about this project in one of my previous posts ) - and choose one, that I haven't worked with before - opencv . OpenCV is an open source project, which is implemented in C++ and Python and is widely used in various computer vision projects.      The issues that I would like to focus on have different backgrounds, one is an enhancement, and the other is a bug fix. I believe I should be able to manage to finish both of them on time, even having a tight schedule this semester and working on 3 big projects at the same time.      Wish me luck and wait for the updates :) Issue #1 Iss

"Good first issue". Finale.

Image
Status: completion     Four pull request have been submitted and work seems to be done, so let's recall what we've been working on: AVM f   (Averaging Variable Method framework). MochaJS PenguinV schemaanalyst 1) AVM f . I believe I should give more detailed 'inside' to this and next projects (MochaJS), since at the time of writing respective post  the work wasn't progressing at desired tempo.           The community welcomed me - a newcomer - nicely and with understanding. The issue was to add tool's logo to README.md and a brief list of features that the tool is capable of. I did my research and found the most recent article that was dating October 2018, which contains a good detailed explanation of the possibilities of AVM f . All I needed to do is to read it and boil it down to the list, which would give an idea of what the tool is for. The community gave me green light on using it as a source and so I did.     The logo has been added, th

"Good first issue", the final chapter. Part 4/4.

Image
Status: success?     The fourth and the final 'Good first issue' fix that I worked with was for schemaanalyst   project, which focuses on work with relational DB schema, ensuring integrity of the data and intended data acceptance/rejection criteria. The issue was relatively simple - to make style of some of the table data be matching with style of examples, containing this data.       The fix was pretty easy to do and not time consuming one. The markup allows usage of backticks in tables, so I made the styles being matching.     However, the community haven't replied yet, so I am wondering if the fix is to accepted in the nearest time or not. The link to the issue . The link to the PR .

"Good first issue", implementation. Part 3/4.

Image
Status: Success     The third issue, in my list of open source issues I have worked with, will be a fix in a README.md for penguinV project (C++ image processing library, which focuses on work with heterogeneous systems. It works with CUDA and OpenCL ).      The fix would require a simple modernization of a landing page in the repo, just so it would have a better user experience. No special requests have been mentioned, so it was up to the developer to provide creativity and suggest a few changes.     The first thing that I noticed, was a lack of hyperlinks in descriptions of the tool, so I modified those mentions of the docs that appeared there (just simple markup links to the Master repo). I also wanted to practice with git rebase , so after all necessary commits have been done locally (just a bit more than a lot of them), I squashed all the commits that I had into one by running git rebase -i HEAD~10 . The command would pick up 10 commits preceding the commit with