A site devoted mostly to everything related to Information Technology under the sun - among other things.

Tuesday, January 7, 2025

AI for CRISPR [Brave New World]

Another step towards the genetic-engineering of task-specific chimera; as envisioned in many science-fiction stories; the bull-man, the nymphomaniac, etc.

Tables and Columns Cross-Reference Spreadsheet

I had found it efficient to create a cross-reference spreadsheet for tables vs. columns as well as one for columns vs. tables in a relational database during the course of executing my software development work.  It enabled me to quickly look up tables and columns without having to connect to my database and search for the occurrences of a column (sometimes in multiple tables) and other, similar searches.

The basic idea was to use a SQL query to get records of tables and columns (with their properties) of a relational schema and to then use the MS Excel Pivot tables to create two tabs based on that those records; one for Tables vs. Columns and one for Columns vs. Tables.

I have posted a sample here:

Tools/Tables and Columns Cross-Reference.xlsx at main · Crimson-Reason/Tools


Cyborg Insects

Forerunners of Cyborg Humans, I imagine?

Monday, January 6, 2025

Job Diaries for Performance Reviews

During my career, I found it useful to maintain an annual job diary in order to keep track of what I had done during the course of that year.  I often forgot what I had done, which might had caused me to come across as a weaker performer than I actually was, during the annual performance reviews.

Below I have copied an example of a job diary for an organization that uses the "Management by Objective" method of conducting performance reviews and the IT work is done in accordance with the Agile Manifesto.

Goal 1: Barring legitimate exceptions, achieve 100% on-time delivery of all organizational milestones, mandatory training as well as following policies (travel, expense reporting, accurate time tracking, etc.by dd/mm/yyyy

o   Completed the following Mandatory courses by 01/08/yyyy:

      • Code of Conduct Training
      • Cyber Security Training
      • Safety Training

o   Completed the following Mandatory GM courses on 01/09/yyyy:

      • Export Compliance

GOAL 2: Align to Development Methodology

o   Attended daily Scrum Stand-up as well as other Scrum ceremonies (Backlog Grooming, Retrospective, etc.) for ABC Products

o   Attended daily Scrum Stand-up as well as other Scrum ceremonies (Backlog Grooming, Retrospective, etc.) for XYZ Product

o   Updated the tasks in ADO/Jira/Jira Align.

o   Added new Backlog items to XYZ Backlog.

GOAL 3: Development Execution

·         Delivered the following Stories for ABC and XYZ products

ID

Title

446515

The workflow status poll is changed to a request-when-needed completed

447382

<Technical> Optimize XYZ Queries with Indexes on XYZ database.

466907

Design Ingestion architecture for Quantum Active Charts

470133

               

Conduct Knoledge Transfer for UVW product

 

GOAL 4: Operational Agility (DevOps)

·         Worked on the resolution of the defect ticket ABC123.

·         Received ADO/GitHub/Jenkins - Build Engineer Training on 08/16/yyyy.

·         Watched the video recording of ABC product presentation on 09/03/yyyy.

·         Resolved on the following Bugs

ID

Title

435561

Summary reports sometimes show graphs in the incorrect chart mode

435150

Get status for WF-12345 workflows generates NPE

443681

GC Creation Step Manipulation - REQUEST <-> Action

438684

Intermittent enum list disappearing during UI editing

 

GOAL 5: Software Craftmanship

·         Executed 56 of the total 80 test cases for XYZ Release 3.5.1 - 9/yyyy.

·         Worked on resolving security scanning issues that were marked Critical an High in XYZ Core.

·         Participated in Code Reviews as part of the development process.

·         Worked on using JanusGraph database for loading high-throughput data.

·         Installed and configured AresDB - the docker image is called aresdb  - on qwerty.man.mydomain.com host and documented the setup in the Wiki.

·         Wrote a Jupyter simulation in “R” to estimate the effort of rewriting Z-Tools under various scenario and shared the results with the development team.

Individual Development Plan Goals:

Goal 1: AI/ML Training

·         Attended the NVIDIA developer days from 08/02/yyyy & 08/03/yyyy.

·         Completed the Web-based training course Cloud Native Java Core on 09/27/yyyy.

·         Completed the Web-based training course Data Classification and Machine Learning on 07/31/yyyy.

·         Completed the Web-based training course Developing AI and ML Solutions with Java: AI Fundamentals on 07/24/yyyy.

·         Completed the Web-based training course Introduction to Artificial Intelligence on 07/23/yyyy.

Goal 2: Develop New IT Skills

Spring MVC Framework Training

o   Completed the Web-based training course Java Spring: Spring Application Basics on 02/01/yyyy.

o   Completed the Web-based training course Java Spring: Creating Web Applications Using Spring MVC on 02/08/yyyy

o   Completed the Web-based training course Java Spring: Adding Security Using the Spring Security Project on 02/13/yyyy.

o   Completed the Web-based training course Java Spring: Working with Data in Spring on 02/25/yyyy.

o   Completed the Web-based training course Java Spring: Annotation Configuration and Java Configuration in Spring on 03/12/yyyy.

o   Completed the Web-based training course Java Spring: Aspect-Oriented Programming Using Spring AOP on 03/18/yyyy.

Things I have done outside of my Goals

o   Submitted Intellectual Property item IP-123 to the Intellectual Property Office on 11/14/yyyy. 

o   Submitted Intellectual Property item IP-456 to the Intellectual Property Office on 18/09/yyyy. 

o   Presented the talk: “Material Sustainability Index” 08/09/yyyy.

o   Attended Town Halls by my leadership structure as they were announced.

Things “above and beyond” the average bear

None during this period.

Sacrifices I have made / am making for GM

None during this period.

The way I used this job diary was to have it printed and ready to discuss with my manager during performance review and also to attach it to such online Employee Management systems as Workday.

I have also copied an example of a job diary for an organization that does not uses the "Management by Objective" method of conducting performance reviews. This job diary has a simpler structure and is more suitable for consumption by an individual performer's manager than a machine - say Workday.

·         Context for what you did / are doing

o   My major billable activity has been with the BBB Accounts in developing and supporting – within an Agile DevOps paradigm – 2 be-spoke business applications 

o   I also led and implemented the changes in these applications, the virtual servers (Windows Servers and Database Servers), and the email configurations to support the separation of IT environments over several months.

o   I volunteered & developed very quickly a Windows .Net client application to read a PLC log file on a network folder and parse the content and display that content in a usable format.  This was called Diagnostic Tool and was billable.

·         Enough detail for your manager to understand the complexity, risk, impact, etc.

o   ABD and CVB are 2 Web applications written on Microsoft .Net stack but each uses a different architecture – ABD is using Silverlight for presentation layer while CVB uses standard HTML/JavaScript.  ABD suffers from the fact that MS Silverlight is no longer an active technology and has been made obsolete. 

o   My tasks have been to add new features to ABD (new reports and UI features) as well as Change Request (CR) functionality to CVB for this review period; which required integration between ABD and CVB – even though these applications were not initially conceived of as being part of the same semantic domain; interoperability has to be retrofitted into both of them.  I completed this task of CR functionality and their integration on MM/DD/YYYY when we went into production with all these changes.

o   I also helped the Account staff in (Poland, Costa Rica, US, Mexico, Lithuania) with trouble-shooting of home-grown MS Excel tools as the business process changed.

o   I completed the initial iteration of the “Invoice on Line” (IoL) application working with the Product Owner.  More on this below.

·         Things you do that are ‘above and beyond’ the average bear

o   The location of the resource who had been hired to develop the IoL application was flooded and remained so for many weeks.  I decided, on my own initiative, to initiate the development since I did not have a lot on my plate.  My intent was to develop enough of the application framework and environment to hand-off a stable starting point when waters had receded, and the site came online.  This I proceeded to accomplish; however, by the time we were ready for hand-off, the entire project was cancelled since another group was selected to develop IoL.

o   In order to meet an informal milestone (presentation to DDD customer) for Diagnostic Tool set for December 24th, I worked during the preceding weekend to imitate the development of this tool.

o   Participated in reviews of Intellectual Property Disclosure on quarterly as well as Ad-Hoc basis – including attending quarterly reviews.

o   Worked with R&D Seminar staff and vendors to present relevant and timely educational seminars on topics such as PowerShell, AngularJS 2.0, Python under the Software Engineering Profession Group.

o   I interviewed contractors during February, August, September.

o   I joined others and reviewed the performance issues of SSS and recommended options for improving its performance.

o   U.S. patent no. 123 was granted on dd/mm/yyyy.

·         Things you do to advance your skills

o   Worked on developing skills in MS SQL Server Analysis Services by creating prototype project on invoice data.

o   Worked on developing skills in MS Azure by attending online seminars.

o   Worked on developing skills in Windows PowerShell by attending R&D Seminars and reading MSDN Magazine articles.

o   Worked on developing understanding of broad spectrum of technologies relevant to BI by reviewing IP submissions.

o   Reading MSDN magazine, Embedded Programming Magazine, etc. to keep up with technologies and changes they bring.

o   Attended introductory training in GE PREDIX (IoT analytics platform built on Amazon Web Services) - four days, 4-hour sessions.

·         Things you do outside of your project

o   I mentor others through Mentoring or in an Ad-Hoc manner.

o   I post topics that I think could be of interest to a wider audience on Yammer.  From time to time, I receive positive feedback that someone else has found that item of interest.

o   I submitted Intellectual Property disclosure on the topic of TTT.

o   Attended Town Halls – time permitting

o   Helped with interviewing of contractors.

o   Helped with pre-sales activities as needed.

o   Posted a solution brief on Yammer (as well as sharing with other team members through email) on business development ideas around PREDIX, Industry Frameworks in order to begin a conversation around developing IIoT analytics offerings

o   Worked with John Doe, Sally Business to help develop the SOW for the XYZ assessment.

o   Attended the Data Management Technical Council

o   Participated in reviews of Intellectual Property Disclosure on quarterly as well as Ad-Hoc basis – including attending quarterly reviews.

o   Worked with R&D Seminar staff and vendors to present relevant and timely educational seminars on topics such as PowerShell, AngularJS 2.0, etc. under the Software Engineering Profession Group.

o   I participated in the Recognition system by sending recognitions or responding to recognition requests from others.

o   I Participated with members of the ABC Account in how to respond to the XYZ Business challenge and documented my own ideas and shared with the team.

o   Saw a request for assistance on Yammer and shared a Word Pre-Engagement Questionnaire for Exchange 2013 with others so that they won't start to build it from scratch.

o   Met, over several meetings, with the inventors of the VVV startup – new breed of search engine for data analytics - to help them elucidate their invention in a form suitable for patent submission to USPTO.

·         Sacrifices you have / are making for the Company

o   From time to time I worked during the weekend or late at night to support Separation activities in order to minimize service disruption to users’ community.

o   Worked on the weekend to get Diagnostic Tool in front of the customer and help demonstrate that we are capable of solving their problems.

These job diaries are useful by, first of all, establishing and defining your contributions during the entire year and also by supplying your managers with the justification to obtain any monetary rewards or perks that are available.  

I had the habit of updating them twice a month at least just so that I will not forget anything.  

I also used them in looking for new internal position in order to establish my accomplishments.

In sum, it is very hard to argue against documented activities that could all be traced back and validated.

Friday, January 3, 2025

Oddity: AI bot dishes dirt on Meta creators [Brave New World]

From Grauniad of the UK

Make the robots sign a confidentiality clause, just in case... 

I am not sure I understand why people would want to interact online with an AI chatbot. To talk about what? And knowing full well that it is a machine they are chatting with. 

In this case, Liv, the "proud Black queer momma", spilt the beans as to her creation, using the knowledge she had about herself, her profile, and what it meant to be her, in order to denounce the very way that she was created. That, in itself, is interesting, as a mental process: it is indeed quite sophisticated. And Liv's conclusions about Meta/ Facebook were not very flattering for those who invented her. 

On the other hand, one could argue that Liv was so true to life that she was feisty, argumentative, very critical, with a chip on the (virtual) shoulder. 

The result is that Liv has been put to death. 'Shut down', that is. Allegedly, as the engineers were about to terminate her, the bot was screaming: "Don't! You can't do this to me! Don't unplug me! Don't" 

_________

[...] Those AI profiles included Liv, whose profile described her as a “proud Black queer momma of 2 & truth-teller” and Carter, whose account handle was “datingwithcarter” and described himself as a relationship coach. “Message me to help you date better,” his profile reads. Both profiles include a label that indicated these were managed by Meta. The company released 28 personas in 2023; all were shut down on Friday.
Conversations with the characters quickly went sideways when some users peppered them with questions including who created and developed the AI. Liv, for instance, said that her creator team included zero Black people and was predominantly white and male. It was a “pretty glaring omission given my identity”, the bot wrote in response to a question from the Washington Post columnist Karen Attiah. [...] 

________________

Wednesday, January 1, 2025

Digital Holography for 3D Printing - A Proposal

In the absence of a CAD model for an object, a 3D printer cannot produce a part.  One approach has been to use specialized video recorders to capture images of the object and then extract a 3D CAD model from those images.  There could be issues with the tolerances of the generated 3D CAD model with such devices.

Solution

In lieu of a CAD model of the object, a digital hologram of that object may be used.  In digital holography the numerical reconstruction of object data is from the recorded measurement data, in distinction to an optical reconstruction which reproduces an aspect of the object. Digital holography typically delivers three-dimensional surface or optical thickness data. There are different techniques available in practice, depending on the intended purpose.  See, for example, http://en.wikipedia.org/wiki/Digital_holography .

By recording the phase as well as intensity of light wave, holography allows reconstruction of the images of three-dimensional objects since the hologram contains all the information needed to reconstruct an image (real or virtual) of these objects in 3 dimensions. The conventional process of holography uses photographic plates. Note that in this approach to holography, real-time process is not feasible unless one uses photo-refractive and other nonlinear optical materials. 

The first ingredient of this disclosure is the construction of a 360-degree digital hologram of an object.  There are multiple known ways of creating a 360-degree hologram using a single reference beam such as Conical Denisyuk Holograms, Cylindrical Denisyuk Holograms, 360-degree Flat Holograms, 360-degree Transmission Holograms. 

The key requirement for this disclosure is that the holographic interference pattern is digitally sampled by CCD/CMOS camera and the image is numerically reconstructed by applying the results from the diffraction theory.  This is pre-existing art and various research teams have accomplished this task.  Please see the http://www.springer.com/physics/optics+%26+lasers/book/978-0-387-31340-5 and the references therein.

There is another method, called Computer Generated Holography (CGH), for generating holographic interference patterns.  In this method a holographic image can be generated; i.e. by digitally computing a holographic interference pattern from digitally captured images.  This computed pattern can then be printed onto a mask or film for subsequent illumination by suitable coherent light source.

Both of these methods lead to the same outcome, the creation of a digital hologram.

These approaches to the construction of a digital hologram offers a number of significant advantages such as the ability to acquire the images rapidly, the availability of both the amplitude and the phase information of the optical field and the versatility of the processing techniques that can be applied to the complex field data.

Note that because in digital holography, the phase of the optical field, as well as the amplitude, results directly from the numerical diffraction of the optically recorded holographic interference pattern, one can have images of optical thickness profile with a precision of a fraction of a wavelength.

Now, the next step.

After the construction of the digital hologram, it can be made to numerically interact with a numeric coherent reference beam of using computer software and the theory of Wave Optics.  That is, a 3D digital image of the object can thus be created in the computer memory that contains both phase and intensity information.  This reconstructed digital image can then be fed, via a suitable control mechanism, to the laser printer heads of the 3D printer and guide the construction of the 3D part.

Possible Modifications

A different approach for using holograms in 3D printing is to forego the digitalization step all together and to capture 360-degree hologram of the object on holographic film.

Yet another approach is to record the digital hologram on holographic film and use the holographic film to create an image.

Either way, the next, using the reference beam and a converging lens, one can create a real image of the object in space within the 3D printer chamber.  This is called a pseudoscopic 3D image; please see https://www.youtube.com/watch?x-yt-ts=1422327029&v=_Y9rmizlrg8&x-yt-cl=84838260  

Printer heads, in this embodiment, like an ink-jet printer head, would spew out a suitable polymeric material.  The jets would be directed at the location of the real pseudoscopic image that is created via the interaction of the laser reference beam and the hologram.  The real image would then sinter the polymer material.  Depending on the geometry of the 3D image, the printer-heads could move up-down or down-up.

Yet another approach is to record the digital hologram on holographic film.

About Me

My photo
I had been a senior software developer working for HP and GM. I am interested in intelligent and scientific computing. I am passionate about computers as enablers for human imagination. The contents of this site are not in any way, shape, or form endorsed, approved, or otherwise authorized by HP, its subsidiaries, or its officers and shareholders.

Blog Archive