[program-l] Re: Question for python developers.

  • From: <joeldodson@xxxxxxxxx>
  • To: <program-l@xxxxxxxxxxxxx>
  • Date: Mon, 3 Jan 2022 14:20:15 -0800

Hi Nick,

Thanks and Happy New Year to you and everyone else as well.

Those are good and valid points regarding front end development and Python 
frameworks.  I have a somewhat different perspective though.

It's very possible to learn HTML/CSS/JavaScript and the plethora of bleeding 
edge technologies associated with app development, and I don't think you're 
suggesting that's not the case.  A blind developer brings an extra, very 
personal perspective to the process.  We live accessibility every day thus are 
highly motivated to ensure not only does an app look the way it is supposed to, 
but it is functionally accessible as well.

By functionally accessible, there are the obvious issues like labels for 
buttons and other form fields.  Keyboard only navigation is a fundamental 
concern as well which benefits more than the blind or mobility challenged.  And 
focusability of items like <p> with error messages is an example of something 
only a blind person might consider.

If you're building a tool intended for internal use only, the UI is probably 
not of great concern.  Usability ought to be the main goal.  And I believe a 
blind person can build a highly usable UI regardless of how pretty it is.  If 
someone is bothered by the look of an internal tool, let them submit some CSS.  
I would argue the goal of internal tools is simplify workflow and reduce the 
opportunity for error.  Again, this is about usability which blind people 
probably have a greater understanding given how many apps might be technically 
accessible, but usability sucks (I'm looking at you Slack).

If you're working on an app intended for customer use, hopefully there is a UX 
person involved with the project as well.  Depending on how technical the UX 
person is, and how well the blind full stack developer knows something like 
React, they could collaborate and probably build at least the MVP together.  
Again, the blind full stack developer can know how to build the React 
components, and also know how to build them to be accessible.  Also, the blind 
full stack developer could provide feedback to the UX designer regarding 
accessibility and usability.  

I suspect most here know the phrase, "nothing for us without us."  I'd argue 
we're very well positioned to bring more to the full stack arena, or at least 
as valuable though differing skills as our sighted colleagues.  

I'm currently pushing hard within my company to take a more sustainable 
approach to accessibility.  I also want to encourage blind people to be more 
involved in front end development.  Not to disparage any companies, especially 
ones often hiring blind people, but if we're all working for/as accessibility 
consultants, it's harder for us to affect the product lifecycle.  If we're 
working for companies building products and services, and we're part of teams 
building front ends, we can have a much greater impact on accessibility by 
advocating for its consideration at the beginning and helping our colleagues 
understand why it's important.

Apologies if this is sounding preachy, and I realize I'm off topic of Python 
development.  I've ben thinking a lot about this idea of full stack blind 
developer.  I've also been looking in to how to build React and/or Svelte apps 
with Python as the backend.  I think there's a lot there and I encourage others 
to dig in.

Cheers,
Joel  
   

-----Original Message-----
From: program-l-bounce@xxxxxxxxxxxxx <program-l-bounce@xxxxxxxxxxxxx> On Behalf 
Of Dzhovani Chemishanov
Sent: Monday, January 3, 2022 2:01 PM
To: program-l@xxxxxxxxxxxxx
Subject: [program-l] Re: Question for python developers.

Hi Nik,
let me straighten things out because I might've mislead you. I said that I've 
been asked if I'm interested in ML and ML ops. My current job is mainly backend 
web services, though I have some formal education in search and text 
processing. Also, my current company might introduce some low-level 
classification and labeling models that are not the modern deep learning, but 
decision trees.
The jobs that I've been asked for were mainly text processing and number 
crunching for fintech startups. However, this might be mainly due to geography. 
Eastern Europe is currently an outsourcing destination for many such companies 
and the jobs reflect that. What I've gotten from industry people is that the 
other big trend are recommendation engines.
HTH,
Dzhovani

On 1/3/22, joseph.lee22590@xxxxxxxxx <joseph.lee22590@xxxxxxxxx> wrote:

Hi,
For GUI design, I follow the design from NV Access (NV Access hired a 
sighted developer several years ago, and this developer has worked 
tirelessly on GUI redesign). Even then, I follow the below steps:
1. After the program backend is verified, I sit down and sketch out a 
"tactile" representation of graphical elements, including control 
placement and labels. Typically, what I mean by tactile design is not 
using braille papers or tapes to measure distances, but rather tracing 
GUI layout on a desk with my fingers, partly because I used to have 
low vision when I was a child.
2. I then use a combination of mouse, touchscreens, and screen review 
to verify GUI layout. I use a combination of mouse and screen review 
since I'm interested in removing overlap (I frequently rely on object 
location to understand where things are). If I really need to examine 
layout (specifically, labels), I use touch devices (this is one of the 
reasons for purchasing touchscreen laptops in recent years).
3. Sometimes I ask for feedback from users to make sure GUI is working 
and looks okay. The biggest reason is to avoid overlaps where a 
control does not cut labels of other controls. This is more so when 
designing settings interfaces.

Hope this helps.
Cheers,
Joseph


-----Original Message-----
From: program-l-bounce@xxxxxxxxxxxxx <program-l-bounce@xxxxxxxxxxxxx> 
On Behalf Of Nikoloz
Sent: Monday, January 3, 2022 12:56 PM
To: program-l@xxxxxxxxxxxxx; Dzhovani Chemishanov 
<dzhovani.chemishanov@xxxxxxxxx>
Subject: [program-l] Re: Question for python developers.

Hello!

Happy new year to you all! I wish you a successfull year, Strong 
health, year full of joy and happyness and everything best in life.
All of your inputs are very well received and you gave me some good 
peaces of advice, which I will definitely use. I have some questions 
from those
inputs:
Dzhovani, you mentioned that you do machine learning and work related 
to it's deployment. Could you please specify in which domains are you 
mostly in? You know, it is in different places now, face recognition, 
natural language processing, speech recognition, fintech, chatbots and 
etc. Also, what kind of libraries do you use? Do you have a formal 
degree in Computer science, maths or disciplines alike?

Joel, Thanks so much for your inputs. I of course search for those 
listings, For example I have tried web development, jango and flask 
are fairly straightforward, well organized and powerfull libs in that 
area, however requirement of design makes it scary for blind users, 
because most of those which I was able to find require some sort of 
design or a full stack dev. If you can't see how your creation looks, 
it can be difficult to get it right what your client really wants and  
as a result properly and correctly address those needs in development 
process. To be honest, I understand the fact that for business it's 
easier to hire one person to do the job, instead of hiring 2 to make 
the same thing and they don't want the plain HTML/javascript stuff anymore.

Tony, Thanks for advice, I really use your ad-on a lot while working 
in python source code and it's been really really helpful to me. Cudos to you.

Joseph, Yup, I am aware of your contributions to NVDA and think it's 
awesome! Using profiles is also a great productivity trick. I would 
have the same design related questions to you. Specifically, how do 
you arrange elements visually on screen? Or how do you check weather 
that creation looks good at the end of the day? You know, desktop 
development is one of the paths you can take when it comes to python. 
Of course, I don't mean gaming and stuff, where c/c++ with engines 
like unity would have much better speed and performance advantage over 
python. But you still can do other stuff with it, such as tools or 
other apps, but they have to bee visually pleasing in order for users to use 
it.

Thanks for any inputs to all again,
Nick.

On 12/31/2021 00:15, Dzhovani Chemishanov wrote:
Hi,
I'm a python developer. The work that I'm doing and that recruiters 
are offering most often are web services backend, machine learning, 
and machine learning deployments. Also, python is used quite 
extensively in devops for managing builds and deployments.
HTH,
Dzhovani

On 12/30/21, Nika Tsiklauri <ntsiklauri2@xxxxxxxxx> wrote:
Hello everyone! Sorry if this is OT. Is there any blind python 
developer here in this list? If so, could I ask you what kind of 
jobs you guys doing?
I am planning to make a switch to python development, so I am trying 
to understand what kind of jobs do blind people do as python 
developers and how they go about doing it, their suggestions, etc.
Any input would be appreciated.
Thanks,
Nick.

** To leave the list, click on the immediately-following link:-
** [mailto:program-l-request@xxxxxxxxxxxxx?subject=unsubscribe]
** If this link doesn't work then send a message to:
** program-l-request@xxxxxxxxxxxxx
** and in the Subject line type
** unsubscribe
** For other list commands such as vacation mode, click on the
** immediately-following link:-
** [mailto:program-l-request@xxxxxxxxxxxxx?subject=faq]
** or send a message, to
** program-l-request@xxxxxxxxxxxxx with the Subject:- faq
** To leave the list, click on the immediately-following link:-
** [mailto:program-l-request@xxxxxxxxxxxxx?subject=unsubscribe]
** If this link doesn't work then send a message to:
** program-l-request@xxxxxxxxxxxxx
** and in the Subject line type
** unsubscribe
** For other list commands such as vacation mode, click on the
** immediately-following link:-
** [mailto:program-l-request@xxxxxxxxxxxxx?subject=faq]
** or send a message, to
** program-l-request@xxxxxxxxxxxxx with the Subject:- faq

** To leave the list, click on the immediately-following link:-
** [mailto:program-l-request@xxxxxxxxxxxxx?subject=unsubscribe]
** If this link doesn't work then send a message to:
** program-l-request@xxxxxxxxxxxxx
** and in the Subject line type
** unsubscribe
** For other list commands such as vacation mode, click on the
** immediately-following link:-
** [mailto:program-l-request@xxxxxxxxxxxxx?subject=faq]
** or send a message, to
** program-l-request@xxxxxxxxxxxxx with the Subject:- faq

** To leave the list, click on the immediately-following link:-
** [mailto:program-l-request@xxxxxxxxxxxxx?subject=unsubscribe]
** If this link doesn't work then send a message to:
** program-l-request@xxxxxxxxxxxxx
** and in the Subject line type
** unsubscribe
** For other list commands such as vacation mode, click on the
** immediately-following link:-
** [mailto:program-l-request@xxxxxxxxxxxxx?subject=faq]
** or send a message, to
** program-l-request@xxxxxxxxxxxxx with the Subject:- faq

** To leave the list, click on the immediately-following link:-
** [mailto:program-l-request@xxxxxxxxxxxxx?subject=unsubscribe]
** If this link doesn't work then send a message to:
** program-l-request@xxxxxxxxxxxxx
** and in the Subject line type
** unsubscribe
** For other list commands such as vacation mode, click on the
** immediately-following link:-
** [mailto:program-l-request@xxxxxxxxxxxxx?subject=faq]
** or send a message, to
** program-l-request@xxxxxxxxxxxxx with the Subject:- faq

Other related posts: