title: Spyder IDE fails to start on Windows 10 with Python 3.8
body: <h1>Note: this issue is fixed in Spyder 4.1.3!</h1>
  
  <hr>
  
  <p>(original question) checking out Python 3.8 (x64) on Windows 10, I got into trouble when trying to setup <code>Spyder</code>. Note: the issue was reproducible with a fresh Python installation on a clean Windows-10 system. However, no such issues on Linux (tested on debian / Mint19.x). </p>
  
  <p>At first, everything went smooth during installation via <code>pip install spyder</code>. </p>
  
  <hr>
  
  <p><strong>error #1:</strong> <code>pywin32</code></p>
  
  <p>After starting <code>Spyder</code>, it said in the IPython console window:</p>
  
  <pre><code>Traceback (most recent call last):
  File "c:\users\USERNAME\appdata\local\programs\python\python38\lib\site‑packages\spyder\plugins\ipythonconsole.py", line 1572, in create_kernel_manager_and_kernel_client
  kernel_manager.start_kernel(stderr=stderr_handle)
  File "c:\users\USERNAME\appdata\local\programs\python\python38\lib\site‑packages\jupyter_client\manager.py", line 240, in start_kernel
  self.write_connection_file()
  File "c:\users\USERNAME\appdata\local\programs\python\python38\lib\site‑packages\jupyter_client\connect.py", line 470, in write_connection_file
  self.connection_file, cfg = write_connection_file(self.connection_file,
  File "c:\users\USERNAME\appdata\local\programs\python\python38\lib\site‑packages\jupyter_client\connect.py", line 141, in write_connection_file
  with secure_write(fname) as f:
  File "c:\users\USERNAME\appdata\local\programs\python\python38\lib\contextlib.py", line 113, in __enter__
  return next(self.gen)
  File "c:\users\USERNAME\appdata\local\programs\python\python38\lib\site‑packages\jupyter_core\paths.py", line 424, in secure_write
  win32_restrict_file_to_user(fname)
  File "c:\users\USERNAME\appdata\local\programs\python\python38\lib\site‑packages\jupyter_core\paths.py", line 359, in win32_restrict_file_to_user
  import win32api
  ImportError: DLL load failed while importing win32api: Das angegebene Modul wurde nicht gefunden.
  </code></pre>
  
  <p>I was able to fix the import error by running <code>pywin32_postinstall.py -install</code> from the scripts folder (from a <code>cmd</code> prompt with elevated rights). That copies <code>pythoncom38.dll</code> and <code>pywintypes38.dll</code> from <code>\Lib\site-packages\pywin32_system32</code> to <code>\windows\system32</code>, see also <a href="https://stackoverflow.com/questions/7238403/import-win32api-error-in-python-2-6">here</a> - however, I'd suggest to <strong>not modify</strong> system folders and use the option I put in <a href="https://stackoverflow.com/a/58682830/10197418">my answer</a> below.</p>
  
  <hr>
  
  <p><strong>error #2:</strong> <code>tornado</code></p>
  
  <p>However, now <code>Spyder</code> just freezes at the loading screen (logo displayed, saying something like "initializing main window")!</p>
  
  <p>cloning the dev version of Spyder from <a href="https://github.com/spyder-ide/spyder.git" rel="nofollow noreferrer">https://github.com/spyder-ide/spyder.git</a> and running it via <code>python bootstrap.py --debug</code> reveals the cause of the freeze:</p>
  
  <pre><code>2019-11-03 17:39:53,261 [ERROR] [tornado.application] -&gt; Exception in callback functools.partial(&lt;function ThreadedZMQSocketChannel.__init__.&lt;locals&gt;.setup_stream at 0x0000015E00B758B0&gt;)
  Traceback (most recent call last):
    File "C:\Users\USERNAME\AppData\Local\Programs\Python\Python38\lib\site-packages\tornado\ioloop.py", line 743, in _run_callback
      ret = callback()
    File "C:\Users\USERNAME\AppData\Local\Programs\Python\Python38\lib\site-packages\jupyter_client\threaded.py", line 48, in setup_stream
      self.stream = zmqstream.ZMQStream(self.socket, self.ioloop)
    File "C:\Users\USERNAME\AppData\Local\Programs\Python\Python38\lib\site-packages\zmq\eventloop\zmqstream.py", line 127, in __init__
      self._init_io_state()
    File "C:\Users\USERNAME\AppData\Local\Programs\Python\Python38\lib\site-packages\zmq\eventloop\zmqstream.py", line 546, in _init_io_state
      self.io_loop.add_handler(self.socket, self._handle_events, self.io_loop.READ)
    File "C:\Users\USERNAME\AppData\Local\Programs\Python\Python38\lib\site-packages\tornado\platform\asyncio.py", line 99, in add_handler
      self.asyncio_loop.add_reader(fd, self._handle_events, fd, IOLoop.READ)
    File "C:\Users\USERNAME\AppData\Local\Programs\Python\Python38\lib\asyncio\events.py", line 501, in add_reader
      raise NotImplementedError
  NotImplementedError
  </code></pre>
  
  <p>...so it seems the import error caused by the Python 3.8 version of <code>pywin32</code> is only one issue. There's also a problem related to <code>tornado</code> IO (web server), see <a href="https://stackoverflow.com/questions/54805213/jupyter-notebook-cannot-start-with-python-3-8-in-windows-10">here</a> / <a href="https://stackoverflow.com/questions/54608421/how-to-fix-notimplementederror-when-trying-to-run-hydrogen-in-atom">here</a>.</p>
  
  <blockquote>
    <p>last checked with Python 3.8.2 (AMD64), Spyder 4.1.1. Please note that I am <strong><em>not</em></strong> using Anaconda. Use either <code>conda</code> <strong><em>or</em></strong> <code>pip</code>, not both.</p>
  </blockquote>