[program-l] Re: Windows vs mac for developers, what do you prefer?

  • From: <kperry@xxxxxxxxxxxxx>
  • To: <program-l@xxxxxxxxxxxxx>
  • Date: Fri, 30 Dec 2022 12:31:13 -0500


I will w warning you that the windows arm is not great for developers yet.  You 
will run into all kinds of weird problems. I know this from sighted engineers 
working on a hard ware problem that need to use different types of development 
environments.  I look at Windows ARM as first release.   Sort of like old XP 
service pack 1.  It wasn't great till service pack 3.  No rush to get to arm 
windows.

-----Original Message-----
From: program-l-bounce@xxxxxxxxxxxxx <program-l-bounce@xxxxxxxxxxxxx> On Behalf 
Of rober555x@xxxxxxxxx
Sent: Friday, December 30, 2022 12:19 PM
To: program-l@xxxxxxxxxxxxx
Subject: [program-l] Re: Windows vs mac for developers, what do you prefer?

Hi David. If you are interested in taking advantage of the newer macs, it is 
possible to virtualize Windows using Parallels so that you have the best of 
both worlds. You will be using Windows in ARM but X86 emulation works 
surprisingly well. NVDA also works very well with Windows in ARM.



-----Original Message-----
From: program-l-bounce@xxxxxxxxxxxxx <program-l-bounce@xxxxxxxxxxxxx> On Behalf 
Of David CM
Sent: Sunday, December 25, 2022 3:35 AM
To: program-l@xxxxxxxxxxxxx
Subject: [program-l] Re: Windows vs mac for developers, what do you prefer?

Hello, thank you very much for your message, it is very informative.

I use the linux console for very specific tasks. Manage gits, perform tasks on 
a server, Dockers, etc.

I don't think I could adapt to using VIM, although I'm curious to know how 
certain things can be done:
Navigation by code errors, navigation by hierarchy of structures such as 
modules, classes and methods, breakpoints, the debugger, etc. I'm of the 
philosophy that the fewer keys or steps for an action, the better.
The audible indentation indicator is a must have for me. That's why I don't use 
JAWS, the last time I tried it at least, it didn't have that feature.

I always use the indentation indicator, because is important to know it when 
I'm working on a development team.

On Windows, I use NVDA 100%. I don't have JAWS installed, actually. I can do 
any task, but for some very tedious applications I have to use the object 
navigation.

I've been developing projects in Windows for about 14 years, although many 
times I've had to run them in linux environments. Fortunately there is a lot of 
facility to run Linux environments virtually.

The idea of using a mac has been more like trying something new, and because of 
the advantages offered by Mac laptops with the new generation of processors.

Again, I think an important factor to consider is usability. For example, 
before using VS Code I was an Eclipse user. I clicked with VS Code very easily. 
It is not usual for this to happen with the ides, it was more difficult for me 
to adapt to Android Studio.
I know that Mac is accessible for developing applications, but I don't know if 
it is usable at the level that Windows is with some ides or editors.

Regards,
David CM.

2022-12-24 1:51 GMT-06:00, Mohamed Fayed <m10fayed@xxxxxxxxx>:

Hi,

Hope my mail finds you well,

Regarding windows vs Mac, it depends on what tasks you want to do. For 
Music production, Mac is a better option as per reviews I hear across 
the internet.

------------

For coding, personally, I do not agree with people voting against Mac 
OS that it is not suitable for developers. Actually, it is the best as 
long as you want to work the unix way.

For me, I use terminal (or command line) for everything I want to do 
except for browsing the internet.

Terminal has always been accessible and works pretty well with 
VoiceOver on all Mac OS versions since 10.12 except for Mac OS 12.

I actually find myself do not need to ask about any GUI applications 
while using terminal. There are a terminal way of doing thing 99.99% of time.

You want text editor? Vim is the solution regardless of your 
programming language. You can think of vim as text editor similar to 
VS code, but with no GUI. Just text interface. It is accessible by 
default and does not need another TTS engine like emacs.

Regarding knowing the indentation, I heard that it has been added to 
VoiceOver in Mac OS 13 Ventura, but unfortunately, I have only Mac OS
12 since my device is relatively old. I have 2016 15” MacBook Pro. 
But, I find myself working pretty well with python and yaml files 
without getting much feedback of the indentation. I know how my vim 
plugins work and when they insert indentation and when they don’t.
There is no doubt that I face sometimes python tracebacks because of 
indentation, but they are not so frequent that they force me to 
consider indentation feedback absence as a bad thing.

You can find a lot of tutorials about using vim for x programming language.
So, it is universally usable as VS code.

VS Code vs Vim is somewhat like windows vs Mac discussions. Each of 
them has its own users and lovers.

The only pitfall for Mac in my opinion is that not all applications 
made specifically for blind are there, e.g. InftyReader and Kurzweil 
1000. You can overcome it for Intel-based Macs since they can run 
Windows x86 applications normally. On Apple Silicon, I am not sure 
whether there is a way to run Windows x86 version using virtualization 
or not. Theoretically, it is possible, but not sure whether someone 
has done a tutorial on doing it. I haven’t done enough search.

If you will use the terminal for everyday tasks, you should think of 
the Unix vs DOS command line discussion, which usually ends up till 
today with Unix based operating systems as winners. Windows is trying 
to catch up and there is much progress, but it is not there yet.

If you consider linux, you can think of Mac as a linux with better GUI 
and better functionalities. The differences are not noticeable in 
everyday tasks except in screen reader user experience.

If you are ready to use accessible terminal interface for most 
everyday tasks, then Mac would be the best option. If you want to use 
GUI applications and do not want to search for alternative methods of 
handling your tasks when working with colleagues who uses Windows, 
then windows is the way to go.

------------

Another thing to keep in mind is the OS your colleagues use. If you 
have an old Mac user, they would be of a great support to you. If they 
are powerful windows users, then they can help you better searching 
for alternative more accessible tools.

------------

For dealing with microcontrollers, you can find more tools and IDEs on 
windows compared to Mac. On Mac, you may need to do it in a relatively 
old basic way. In other words, you may have to go deep till commands 
controlling the hardware, e.g. write sequence of bytes to disk, use 
serialization protocol to send the file to microcontroller via 
interface, …etc. On windows tools, you may find a button for burning program 
to it.

If you will end up using command line on windows, usually you can find 
similar methods on Mac and Linux.

Generally, support for microcontrollers software is more common on 
windows than Mac or linux.

------------

For Screen readers

Regarding modifying Voiceover screen reader on Mac, it is less open 
compared to NVDA and JAUS.

You can add more functionalities using keyboard commanders, but you 
can’t modify the way the core of VoiceOver works. You can make an 
Apple Script that reports battery status and add a keyboard commander 
so that Voiceover reports battery level when pressing right option key+b, for 
instance.

The tasks you can do using commanders are limited to what Apple Script 
programming language and Apple Automator software can provide you and 
your imagination. As long as you can code it, you can add it to 
VoiceOver via keyboard commander.

If we take the case of indentation reporting, you may make a script 
that takes current line read by VoiceOver, check the indentation 
level, then report it. Finally, assign that script to option+I 
keyboard commander, for instance.

——————

Yes, eSpeak Ng is available on Mac App Store as well, since Mac OS 13 
(the latest version).

------------
A thing you should always keep in your mind when you want to start a 
new job or a new semester in faculty and when dealing a set of new 
tools is that learning to use these tools is not an easy task since it 
can always expand to searching for a new set of alternative tools to 
be accessible with your screen reader.

Not NVDA is suitable for all tasks on windows and not JAUS is suitable 
for all tasks. Usually you need a combination of all of them to do some 
things.
Learning these new tools is time consuming, so do not expect to be 
productive and useful to your employer before understanding these 
tools properly to handle most common tasks.

------------

I hope this email helps you in making educated decision for yourself 
and your case. It is totally normal that people do not agree on a 
specific way of doing things, but you should find the best method for you.

Regards,

Mohamed E. Fayed
** 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: