As a client; how to present database needs to perspective designers?

(I am preparing to solicit proposals for database/project management software design. I know that the quality of the final product will depend on how clearly and completely I can organize and explain the needs of my dept. to perspective consultants.)

What I’ve done: Started trial accounts with a few free project tracking websites to see if there was anything out there that would work for us ‘off the shelf.’ Developed a mini SQL database and dug through all of the Microsoft 365 apps (thinking I would be designing this myself). I’m currently developing a comprehensive list of every piece of data that should go into the database. The source, destination, and format of each piece as well as whether or not the data will need to be updated, calculated as needed, remain static… Also, how each user will need to be able to interact with the database, what reports should be generated, etc.

What we need: We need a relational database and a project tracking system. We need to track accounting, spatial data, project design data, etc. Supervisors need to have a ‘dashboard’ to see how many projects are active, and in what phase. Users need the database to integrate into their workflow to create documents and summary reports. The system should be able to handle workflow prompts so that completion of a task by a user triggers related actions. Data is sensitive, used by a gov’t agency, and needs to be secure. Cloud based is a possibility.

Where I’m stuck: I need to figure out what information is necessary when requesting initial proposals, and how to organize it in a way that is meaningful for consultants. I was originally going to draft an ERD to present, but I’m wondering now if that is too much detail, and not enough big picture. I’m trying to dig myself back out of the minutiae to sort out the essential information, and I’m not really sure where to start.

(Is there a format that is helpful to use for organizing the information the designer will need? Specific types of information they will require? Or perhaps resources online that more or less explain the designer’s point of view and what they are looking for from a client? How detailed should I be during the initial proposal request?

I have found a few articles explaining concepts of good database design, but they are targeted toward designers, not clients. I’d really appreciate any insights this community might have!)

Importing a private key (paper wallet) to Bitcoin Core client, while offline, is not actually importing

Trying to import a paper wallet to bitcoin core, while not having a fully synced node.
I’ve used:
importprivkey 1Lblablablablabla “MyLabel” false
It returns “null”, which I understand means successful import.

But then when I use dumpprivkey with the associated public address, it says there is no private key associated with the address.
I also look in the GUI and can’t find any clue as to where that private key has been imported.

So basically the wallet is not giving me errors of failed import, but also not actually importing the private key.
What should I do?

Unity Mirror client scene.local player.connection to client.client owned object not working in client

U hmm I’m new to mirror networking I just wanna find objects that the local player has authority, but it doesn’t work on client, is there a solution to this? Well I could make an object tracking script but that will complicate things.
This question might look like I haven’t research anything, truth is I’ve searched everywhere there is just no documentation for this

Why have a refresh_token with an OAuth2 Client Credentials grant type?

Can someone explain to me the purpose of the refresh token when you’re using the Client Credentials grant type with OAuth2? I’m confused because you can easily generate a new access token without one, so why bother?

For example, to get an access token you typically only need:

https://oauth.example.com/token?grant_type=client_credentials&client_id=CLIENT_ID&client_secret=CLIENT_SECRET

So why would you ever use:

https://oauth.example.com/token?grant_type=refresh_token&client_id=CLIENT_ID&client_secret=CLIENT_SECRET&refresh_token=REFRESH_TOKEN

Is a refresh token more applicable when using other grant types (eg. Resource Owner Password Credentials)?

scrolling – Thin vertical scrollbars such as those in the Steam client are a usability nightmare. Why do designers still use them?

As an example I detest using the Steam client on a PC and have realized one of the biggest reasons is that scrolling the commonly very ‘tall’ pages is utterly painful.

Scrolling by clicking and dragging the scroll thumb bar is by far the fastest and most efficient way to scroll tall pages. For example I can easily jump to say 3/4 of the way down the page. Keys just can’t do this as well (also force me to go to the keyboard in a heavily mouse driven UI) and let’s not even waste a second thinking about the scroll wheel.

These vertical scrollbars are pixels wide and these scrollbars are not configurable in any way. At least if I am in the browser version I use an addon that lets me override the site scrollbars. Sadly the browser version of steam is missing a lot of client functionality so dumping the client isn’t an option.

Even worse is that if I want to quickly move the mouse to the vertical scrollbar, I cannot rely on Fitt’s law and move the mouse quickly to the screen edge and just scroll. Instead I have to painstakingly move the pointer left a couple of pixels until over the scrollbar. This is just infuriating!

Yes, I have raised this months ago in the dumping ground that is the Steam discussion forum. I received no response apart from some passerby who could only mention the half-baked custom CSS option that is wiped whenever steam updates (often daily).

postgresql – Postresql Client and Version Mismatch

Given:

$which psql
/Library/PostgreSQL/12/bin/psql
$which createdb
/Library/PostgreSQL/12/bin/createdb

Recently I created a database:

$createdb -U postgres postgres
Password: 

However, I don’t understand why the server version varies from the client.

$psql -U postgres
Password for user postgres: 
psql (12.1, server 9.6.2)
Type "help" for help.

How can I create the server on 12.1 as well?

c++ – Is it safe to distribute the server’s certificate file with the client?

I’ve been working on making an SSL server/client on C++ using Boost. To load the certificates, I use the following code for each side:

server.cpp

boost::asio::ssl::context ssl_context(boost::asio::ssl::context::tls);

ssl_context.use_certificate_chain_file("server.crt");
ssl_context.use_private_key_file("server.key", boost::asio::ssl::context::pem);
ssl_context.use_tmp_dh_file("dh2048.pem");

client.cpp

boost::asio::ssl::context ssl_context(boost::asio::ssl::context::tls);
ssl_context.set_verify_mode(boost::asio::ssl::verify_peer);

ssl_context.load_verify_file("server.crt");

If I don’t add the ssl_context.load_verify_file("server.crt"); line on the client, I get the following errors from both sides during SSL handshake:

server: handshake: tlsv1 alert unknown ca

client: handshake: certificate verify failed

So, is it safe to distribute the “server.crt” certificate chain file with the client? If not, how should this be done instead?

sharepoint enterprise – InvalidOperationException: Could not get algorithm from X509AsymmetricSecurityKey to make Client Context for SP 2016 in VS 2019

I’m trying to create a context to SP 2016 site with the help of a certificate using following piece of code:

OfficeDevPnP.Core.AuthenticationManager othManager = new OfficeDevPnP.Core.AuthenticationManager();
System.Security.Cryptography.X509Certificates.X509Certificate2 cert = new System.Security.Cryptography.X509Certificates.X509Certificate2({certificate path}, {password to access Certificate});
ClientContext oContext = othManager.GetHighTrustCertificateAppOnlyAuthenticatedContext({siteurl}, {clientID}, cert, {certificate issuer id});
Web objWeb = oContext.Web;
oContext.Load(objWeb);
oContext.ExecuteQuery();
string webTitle = objWeb.Title;

However, it is running fine on Visual Studio 2015 but I have various solutions in VS 2019 so it is throwing following exception in VS 2019:

InvalidOperationException: Could not get algorithm from X509AsymmetricSecurityKey

Even tried following in App.config file of my application but issue persists:

<system.web>
<compilation debug="true" targetFramework="4.7.2"/>
<httpRuntime targetFramework="4.6.1"/>
</system.web>

Any help would be much appreciated!

Need product design for client – $30 Paypal

Hey everyone, I need to get a cool product design made for my client.

The name of the product is going to be called Joker ( just like the movie) sample images here – https://www.google.com/search?q=jok…UouVkKHbOzAM8Q_AUoAXoECBUQAw&biw=1280&bih=637

Sample Product to design over – https://www.strictlyecig.com/products/no-cap-hemp-delta8-shatter.html

Delta 8 and everything you can add the same just want to…

Need product design for client – $30 Paypal

structured text – StructuredText client on a PLC, adding a C# server

This is ST code running on a PLC, apparently it’s a client, that connects to a server running in Labview.
I need to create a tcp server in c# to talk to it. Any chance of breaking down what’s happening here?

// Start sequence when Trigger changes to TRUE.

IF ( (Enable=TRUE) AND (DoTCP=FALSE) AND (_Eip_EtnOnlineSta=TRUE) ) THEN
    DoTCP:=TRUE;
  
IF (TCP_Conn_Status = _CLOSED) OR (TCP_Conn_Status = _CLOSE_WAIT) OR (TCP_Conn_Status = _CLOSING)  THEN //(TCP_Conn_Status <> _ESTABLISHED) THEN
    Stage := 1; //try connect if not estabilished yet
ELSE
    Stage:=2;   //only check status, avoid open another port and lose sync.     
END_IF;

SktTCPConnect_instance(Execute:=FALSE);  // Initialize instance.
SktClearBuf_instance(Execute:=FALSE);  // Initialize instance.
SktGetTCPStatus_instance(Execute:=FALSE);  // Initialize instance.
SktTCPSend_instance(  // Initialize instance.
    Execute:=FALSE,
    SendDat:= dummy_dat(0));  // Dummy
SktTCPRcv_instance(  // Initialize instance.
    Execute:=FALSE,
    RcvDat :=dummy_dat(0));  // Dummy
SktClose_instance(Execute:=FALSE);  // Initialize instance.
END_IF;

IF (DoTCP=TRUE) THEN

CASE Stage OF
        
    1:  // Request a connection.
        SktTCPConnect_instance(
            Execute   :=TRUE,
            SrcTcpPort:=UINT#0,  // Local TCP port number: Automatically assigned.
            DstAdr    :=IP_Address,  // Remote IP address
            DstTcpPort:=Remote_Port,  // Destination TCP port number
            Socket =>TCP_Conn_WkSocket);  // Socket     
            
        IF (SktTCPConnect_instance.Done=TRUE) THEN
            Stage:=INT#2;  //check TCP status               
        ELSIF (SktTCPConnect_instance.Error=TRUE) THEN
            error_ID := (SktTCPConnect_instance.ErrorID);
            //TCP_Conn_Status := _CLOSED;
            IF (error_ID = WORD#16#2008) THEN //never lock error to else state
                Stage:=INT#6; //errorID=2008 - Socket Communications Resource Overflow
            ELSE
                Stage:=INT#2;  // always check TCP status
            END_IF; 
                    
        END_IF;
        

    2: //request status
        SktGetTCPStatus_instance(
            Execute:=TRUE,
            Socket :=TCP_Conn_WkSocket);  // Socket
                        
        IF (SktGetTCPStatus_instance.Done) THEN
            TCP_Conn_Status := SktGetTCPStatus_instance.TcpStatus;
            IF (TCP_Conn_Status <> _ESTABLISHED) THEN //(TCP_Conn_Status = _CLOSED) OR (TCP_Conn_Status = _CLOSE_WAIT) OR (TCP_Conn_Status = _CLOSING) THEN
                Stage:=INT#0;   //go to end
            ELSE
                Stage:=INT#3;   //continue normal flow
            END_IF;
                                                
        ELSIF (SktGetTCPStatus_instance.Error=TRUE) THEN
            error_ID:=(SktGetTCPStatus_instance.ErrorID);
            Stage:=INT#20; // Error end
        END_IF;
            
    3:   //  sending message
        Payload_local:= Payload_Client_IN;  
                    
        Msg_size_byte := CRC_size_byte + ToAryByte(Payload_local,_LOW_HIGH,SendSocketDat(0)) + UINT#2;  ////payload size + CRC (bytes)
        Msg_size:= ToAryByte(Msg_size_byte,_LOW_HIGH,SendSocketDat(0));     //replace first two bytes with payload  + CRC size 
        Msg_size_byte :=ToAryByte(Payload_local,_LOW_HIGH,SendSocketDat(2));    //replace rest of the array with palyload as bytes
        
        Payload_CRC_send := AryCRCCCITT(SendSocketDat(0),(Msg_size_byte+Msg_size),WORD#0,_LOW_HIGH);        //calculates (size +payload) CRC
        Msg_size_CRC :=ToAryByte(Payload_CRC_send,_LOW_HIGH,SendSocketDat(Msg_size_byte+Msg_size)); //append CRC as bytes to the end of the array
        
        SktTCPSend_instance(
            Execute:=TRUE,
            Socket :=TCP_Conn_WkSocket,  // Socket
            SendDat:= SendSocketDat(0),// TCP_Message_Send(0),  // Send data
            Size   := Msg_size_byte+Msg_size+Msg_size_CRC); // msg payload + payload size + CRC 16
            
        IF (SktTCPSend_instance.Done=TRUE) THEN
            Stage:=INT#4;  // go to read buffer
            SktTCPSend_instance(  // reinitialize instance.
                Execute:=FALSE,
                SendDat:= dummy_dat(0));
            SktTCPRcv_instance( //reset instance
                Execute:=FALSE,
                RcvDat :=dummy_dat(0));
            
        ELSIF (SktTCPSend_instance.Error=TRUE) THEN             
            error_ID:=( SktTCPSend_instance.ErrorID);               
            IF (error_ID =  WORD#16#2006) THEN // OR error_ID = WORD#16#2003) THEN
                Stage:=INT#5;  // time out - clear buffer only
            ELSE
                Stage:=INT#30;  // Error end
            END_IF;
                                    
        END_IF;
        
                            
    4:  // Request receiving message size only
        SktTCPRcv_instance(
            Execute:=TRUE,
            Socket :=TCP_Conn_WkSocket,  // Socket
            TimeOut:=UINT#10,  // Timeout time: 1 x (0.1 sec)
            Size   :=UINT#2,  // Receive data size
            RcvDat := RcvSocketDat(0));  // Receive data
     
        IF (SktTCPRcv_instance.Done=TRUE) THEN              
            Stage:=INT#41;  // Normal end
            SktTCPRcv_instance( //reset instance
                Execute:=FALSE,
                RcvDat :=dummy_dat(0));
                            
        ELSIF (SktTCPRcv_instance.Error=TRUE) THEN              
            error_ID:=(SktTCPRcv_instance.ErrorID);             
            IF (error_ID =  WORD#16#2006) THEN // OR error_ID = WORD#16#2003) THEN
                Stage:=INT#5;  // time out - clear buffer only              
            ELSE
                Stage:=INT#40;
            END_IF;
            
        END_IF;
        
    41: // Request receiving payload
        
        AryByteTo (RcvSocketDat(0),UINT#2,_LOW_HIGH,Msg_size_byte_send);    //convert byte array to message size
        
        SktTCPRcv_instance(
            Execute:=TRUE,
            Socket :=TCP_Conn_WkSocket,  // Socket
            TimeOut:=UINT#10,  // Timeout time 10 x 0.1s - 1sec
            Size   :=Msg_size_byte_send,  // Receive data size
            RcvDat := RcvSocketDat(2));  // Receive data
     
        IF (SktTCPRcv_instance.Done=TRUE) THEN
            Stage:=INT#5;  // normal end
            
            Payload_CRC_receive_recalc:= AryCRCCCITT(RcvSocketDat(0),Msg_size_byte_send,WORD#0,_LOW_HIGH);  //calculate CRC from received message (add size, but exclude CRC on the payload)
            AryByteTo(RcvSocketDat(Msg_size_byte_send),UINT#2,_LOW_HIGH,Payload_CRC_receive);
            IF (Payload_CRC_receive = Payload_CRC_receive_recalc) then
                payload_received:=AryByteTo(RcvSocketDat(2),Msg_size_byte_send - UINT#2,_LOW_HIGH,Payload_Server_OUT);  //convert array of bytes to dta type, excluding msg size and CRC
            END_IF;
            
        ELSIF (SktTCPRcv_instance.Error=TRUE) THEN              
            error_ID:=(SktTCPRcv_instance.ErrorID);             
            IF (error_ID =  WORD#16#2006) THEN // OR error_ID = WORD#16#2003) THEN
                Stage:=INT#5;  // time out - clear buffer only              
            ELSE
                Stage:=INT#410;
            END_IF;
            
        END_IF;
        
        
     5:  // Clear receive buffer.
        SktClearBuf_instance(
            Execute:=TRUE,
            Socket :=TCP_Conn_WkSocket);  // Socket
     
        IF (SktClearBuf_instance.Done=TRUE) THEN
            Stage:=INT#0;  // check connection
        ELSIF (SktClearBuf_instance.Error=TRUE) THEN
            error_ID:=(SktClearBuf_instance.ErrorID);
            Stage:=INT#50;  // Error end
        END_IF;
 
    6:  // Request closing.
        SktClose_instance(
            Execute:=TRUE,
            Socket :=TCP_Conn_WkSocket);  // Socket
                            
        IF (SktClose_instance.Done=TRUE) THEN 
            Stage:=INT#0;  // Normal end
            TCP_Conn_Status:= _CLOSED;
        ELSIF (SktClose_instance.Error=TRUE) THEN
            error_ID:=(SktClose_instance.ErrorID);
            IF (SktClose_instance.ErrorID = WORD#16#2007) THEN//errrorID = 2007 --> Socket Handle Out of Range(closed)
                Stage:=0;
                //TCP_Conn_Status:= _CLOSED;
            ELSE
                Stage:=INT#60;  // Error end
            END_IF;
            
        END_IF;
        
    0:  // Normal end
        DoTCP  :=FALSE;
        Done:= TRUE;
        
        SktTCPSend_instance(  // reinitialize instance.
            Execute:=FALSE,
            SendDat:= dummy_dat(0));
        SktTCPRcv_instance( //reset instance
            Execute:=FALSE,
            RcvDat :=dummy_dat(0)); 
            
    ELSE  // Interrupted by error.
        IF (error_ID = WORD#16#2003 OR error_ID = WORD#16#2008) THEN //Socket Status Error
                //Stage:=UINT#2;    //force reopen
                //error_ID:=WORD#16#0;
                TCP_Conn_Status:= _CLOSED;
                //TCP_Conn_Status:= TCP_Conn_Status;
        END_IF;             
            DoTCP  :=FALSE;//use FALSE to reset states, use TRUE to trap error during debug
            Done := FALSE;              
            SktTCPSend_instance(  // reinitialize instance.
                Execute:=FALSE,
                SendDat:= dummy_dat(0));
            SktTCPRcv_instance( //reset instance
                Execute:=FALSE,
                RcvDat :=dummy_dat(0));
        //END_IF;               
END_CASE;
END_IF;