<story><title>Programmers Should Automate More</title><url>https://shubhamjain.co/2017/05/06/why-programmers-should-automate-more/</url></story><parent_chain><item><author>flukus</author><text>As someone with some potential admin work coming up, can anyone recommend some good cli tools for office work? I&amp;#x27;d love to be able to take a word&amp;#x2F;libreoffice template and generate a document by supplying command line parameters for example.&lt;p&gt;&amp;gt; In fact, we can already see the impact of smartphone-only students on their ability to grasp and automate complex workflows. The fact that mobile apps are largely non-composable and non-programmable seems to seriously limit students&amp;#x27; abilities in general digital problem solving.&lt;p&gt;Computers became so easy to use that no one learns how to use them. It&amp;#x27;s no wonder grandma always opens that attachment with an exe extension, file extensions have been hidden for as long as she&amp;#x27;s used computers, she doesn&amp;#x27;t know what the convey.&lt;p&gt;Teaching kids to code is the latest fad but I think the majority of them would be much better served learning some basic bash scripting and related unix tools.</text></item><item><author>Derbasti</author><text>But where are the tools? Of course I can always write a shell script, but the vast majority of GUI tools is not programmable.&lt;p&gt;I would love to automate my image capturing workflows, my tax filing, my invoicing, my calendaring, my contacts, and SO many other things. But most tools are not scriptable. They are sealed, proprietary binaries that I can&amp;#x27;t interact with.&lt;p&gt;Conversely, I love tools like the shell, Emacs, and programming tools in general, &lt;i&gt;because&lt;/i&gt; I can automate them. I can automate testing, compiling, generating reports... And if something is not built-in, these tools provide hooks and APIs to extend their functionality for my particular use cases.&lt;p&gt;In fact, we can already see the impact of smartphone-only students on their ability to grasp and automate complex workflows. The fact that mobile apps are largely non-composable and non-programmable seems to seriously limit students&amp;#x27; abilities in general digital problem solving.</text></item></parent_chain><comment><author>yardshop</author><text>&amp;gt; I&amp;#x27;d love to be able to take a word&amp;#x2F;libreoffice template and generate a document by supplying command line parameters for example.&lt;p&gt;Python with PyWin32 is great for this, the Word doc part anyway. I&amp;#x27;ve got several scripts the create modify or read Excel and Word docs for a number of different purposes: tracking my mileage, automating creation of new users (now done with Powershell though), converting and uploading documents to a web server. VBA&amp;#x2F;VBScript can do some of these things too, but Python is a much more capable and sane language to use. Powershell is another great automation choice too.</text></comment>
<story><title>Programmers Should Automate More</title><url>https://shubhamjain.co/2017/05/06/why-programmers-should-automate-more/</url></story><parent_chain><item><author>flukus</author><text>As someone with some potential admin work coming up, can anyone recommend some good cli tools for office work? I&amp;#x27;d love to be able to take a word&amp;#x2F;libreoffice template and generate a document by supplying command line parameters for example.&lt;p&gt;&amp;gt; In fact, we can already see the impact of smartphone-only students on their ability to grasp and automate complex workflows. The fact that mobile apps are largely non-composable and non-programmable seems to seriously limit students&amp;#x27; abilities in general digital problem solving.&lt;p&gt;Computers became so easy to use that no one learns how to use them. It&amp;#x27;s no wonder grandma always opens that attachment with an exe extension, file extensions have been hidden for as long as she&amp;#x27;s used computers, she doesn&amp;#x27;t know what the convey.&lt;p&gt;Teaching kids to code is the latest fad but I think the majority of them would be much better served learning some basic bash scripting and related unix tools.</text></item><item><author>Derbasti</author><text>But where are the tools? Of course I can always write a shell script, but the vast majority of GUI tools is not programmable.&lt;p&gt;I would love to automate my image capturing workflows, my tax filing, my invoicing, my calendaring, my contacts, and SO many other things. But most tools are not scriptable. They are sealed, proprietary binaries that I can&amp;#x27;t interact with.&lt;p&gt;Conversely, I love tools like the shell, Emacs, and programming tools in general, &lt;i&gt;because&lt;/i&gt; I can automate them. I can automate testing, compiling, generating reports... And if something is not built-in, these tools provide hooks and APIs to extend their functionality for my particular use cases.&lt;p&gt;In fact, we can already see the impact of smartphone-only students on their ability to grasp and automate complex workflows. The fact that mobile apps are largely non-composable and non-programmable seems to seriously limit students&amp;#x27; abilities in general digital problem solving.</text></item></parent_chain><comment><author>krotton</author><text>Pandoc can generate and convert between various document types, including Office docs based on a template (although I haven&amp;#x27;t used the option myself, I just convert Markdown to PDF&amp;#x2F;HTML most of the time).</text></comment>