<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Filipe Mesquita</title>
    <description>The latest articles on DEV Community by Filipe Mesquita (@filipemesquita).</description>
    <link>https://dev.to/filipemesquita</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1003136%2Fc2fbfab4-02a2-4264-b7eb-434476fd8218.jpeg</url>
      <title>DEV Community: Filipe Mesquita</title>
      <link>https://dev.to/filipemesquita</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/filipemesquita"/>
    <language>en</language>
    <item>
      <title>How to get a thread dump of running Java process</title>
      <dc:creator>Filipe Mesquita</dc:creator>
      <pubDate>Tue, 08 Oct 2024 20:53:05 +0000</pubDate>
      <link>https://dev.to/filipemesquita/how-to-get-a-thread-dump-of-running-java-process-588p</link>
      <guid>https://dev.to/filipemesquita/how-to-get-a-thread-dump-of-running-java-process-588p</guid>
      <description>&lt;p&gt;&lt;code&gt;jstack &amp;lt;pid&amp;gt; &amp;gt; threadDump.txt&lt;/code&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How use a Magic keyboard on top of a Macbook</title>
      <dc:creator>Filipe Mesquita</dc:creator>
      <pubDate>Mon, 20 Mar 2023 18:05:17 +0000</pubDate>
      <link>https://dev.to/filipemesquita/how-use-a-magic-keyboard-on-top-of-a-macbook-5hlk</link>
      <guid>https://dev.to/filipemesquita/how-use-a-magic-keyboard-on-top-of-a-macbook-5hlk</guid>
      <description>&lt;p&gt;Install Karabiner and disable built-in keyboard when a bluetooth keyboard is connected.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://apple.stackexchange.com/questions/67133/how-to-disable-the-built-in-macbook-keyboard"&gt;https://apple.stackexchange.com/questions/67133/how-to-disable-the-built-in-macbook-keyboard&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Prevent Touch ID button to trigger:&lt;br&gt;
1) screen lock: &lt;code&gt;defaults write com.apple.loginwindow DisableScreenLockImmediate -bool yes&lt;/code&gt;&lt;br&gt;
2) Accessibility shortcut (triple press): Apple menu  &amp;gt; System Settings (or System Preferences), click Accessibility, then click Shortcut. Then just uncheck every shortcut option and the menu no longer comes up.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How to trigger a LiveReload on a remote machine</title>
      <dc:creator>Filipe Mesquita</dc:creator>
      <pubDate>Thu, 23 Feb 2023 19:54:30 +0000</pubDate>
      <link>https://dev.to/filipemesquita/how-to-trigger-a-livereload-on-a-remote-machine-1hid</link>
      <guid>https://dev.to/filipemesquita/how-to-trigger-a-livereload-on-a-remote-machine-1hid</guid>
      <description>&lt;p&gt;Use this extension in Chrome (RemoteLiveReload, not LiveReload):&lt;br&gt;
&lt;a href="https://chrome.google.com/webstore/detail/remotelivereload/jlppknnillhjgiengoigajegdpieppei/related?hl=en-GB"&gt;https://chrome.google.com/webstore/detail/remotelivereload/jlppknnillhjgiengoigajegdpieppei/related?hl=en-GB&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Make sure the LiveReload server is running on port 35729 and that this port is accessible from your local machine (e.g., using telnet).&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How to Manage multiple Java versions on macOS</title>
      <dc:creator>Filipe Mesquita</dc:creator>
      <pubDate>Thu, 23 Feb 2023 19:53:16 +0000</pubDate>
      <link>https://dev.to/filipemesquita/how-to-manage-multiple-java-versions-on-macos-51dj</link>
      <guid>https://dev.to/filipemesquita/how-to-manage-multiple-java-versions-on-macos-51dj</guid>
      <description>&lt;p&gt;Use jenv&lt;/p&gt;

&lt;p&gt;Use homebrew to add a java version.&lt;/p&gt;

&lt;p&gt;Use the command: &lt;code&gt;jenv add&lt;/code&gt; to add this version to jenv&lt;/p&gt;

&lt;p&gt;&lt;code&gt;jenv versions&lt;/code&gt; to see all versions added&lt;/p&gt;

&lt;p&gt;More info: &lt;a href="https://www.jenv.be/" rel="noopener noreferrer"&gt;https://www.jenv.be/&lt;/a&gt;&lt;/p&gt;

</description>
      <category>php</category>
      <category>softwareengineering</category>
      <category>refactor</category>
    </item>
    <item>
      <title>How to debug a SpringBoot application in IntelliJ IDEA</title>
      <dc:creator>Filipe Mesquita</dc:creator>
      <pubDate>Thu, 12 Jan 2023 19:03:30 +0000</pubDate>
      <link>https://dev.to/filipemesquita/how-to-debug-a-springboot-application-in-intellij-idea-e8c</link>
      <guid>https://dev.to/filipemesquita/how-to-debug-a-springboot-application-in-intellij-idea-e8c</guid>
      <description>&lt;ol&gt;
&lt;li&gt;open &lt;code&gt;Gradle&lt;/code&gt; module, expand &lt;code&gt;Tasks&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;right-click on &lt;code&gt;bootRun&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;click on &lt;code&gt;Debug&lt;/code&gt;
&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>api</category>
      <category>discuss</category>
    </item>
    <item>
      <title>How to change the default app for files of a particular type in the mac terminal</title>
      <dc:creator>Filipe Mesquita</dc:creator>
      <pubDate>Sun, 08 Jan 2023 02:49:51 +0000</pubDate>
      <link>https://dev.to/filipemesquita/how-to-change-the-default-app-for-files-of-a-particular-type-in-the-mac-terminal-22kc</link>
      <guid>https://dev.to/filipemesquita/how-to-change-the-default-app-for-files-of-a-particular-type-in-the-mac-terminal-22kc</guid>
      <description>&lt;p&gt;&lt;a href="https://superuser.com/questions/273756/how-to-change-default-app-for-all-files-of-particular-file-type-through-terminal"&gt;https://superuser.com/questions/273756/how-to-change-default-app-for-all-files-of-particular-file-type-through-terminal&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Install duti: &lt;code&gt;brew install duti&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Now you need to find the id of the app you want to use, and assign it to the extension you want to use it for. In this example, I already use Brackets for *.sh and I want to also use it for *.md files instead of xcode.&lt;/p&gt;

&lt;p&gt;Get the default app id for .sh files: &lt;code&gt;duti -x sh&lt;/code&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;output:
  Brackets.app
  /opt/homebrew-cask/Caskroom/brackets/1.6/Brackets.app
  io.brackets.appshell
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The last line is the id.&lt;/p&gt;

&lt;p&gt;Use this app id for all .md files: &lt;code&gt;duti -s io.brackets.appshell .md all&lt;/code&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How to quickly speed up Java serialization</title>
      <dc:creator>Filipe Mesquita</dc:creator>
      <pubDate>Fri, 06 Jan 2023 17:40:14 +0000</pubDate>
      <link>https://dev.to/filipemesquita/how-to-quickly-speed-up-java-serialization-hcm</link>
      <guid>https://dev.to/filipemesquita/how-to-quickly-speed-up-java-serialization-hcm</guid>
      <description>&lt;p&gt;Use Kryo Serialization with &lt;code&gt;setRegistrationRequired(false)&lt;/code&gt;: &lt;a href="https://github.com/EsotericSoftware/kryo"&gt;https://github.com/EsotericSoftware/kryo&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Use KryoPool for multi-threaded serialization and &lt;code&gt;toBytes()&lt;/code&gt; (not &lt;code&gt;getBuffer()&lt;/code&gt;) to get the serialization output.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>How to monitor a Java remote app with VisualVM</title>
      <dc:creator>Filipe Mesquita</dc:creator>
      <pubDate>Fri, 06 Jan 2023 17:37:09 +0000</pubDate>
      <link>https://dev.to/filipemesquita/how-to-monitor-a-java-remote-app-with-visualvm-2a3j</link>
      <guid>https://dev.to/filipemesquita/how-to-monitor-a-java-remote-app-with-visualvm-2a3j</guid>
      <description>&lt;p&gt;Add the following JVM arguments to the remote app:&lt;br&gt;
&lt;code&gt;-Djava.rmi.server.hostname=[enter_hostname_here]&lt;br&gt;
-Dcom.sun.management.jmxremote &lt;br&gt;
-Dcom.sun.management.jmxremote.port=[enter_port_here]  &lt;br&gt;
-Dcom.sun.management.jmxremote.ssl=false&lt;br&gt;
-Dcom.sun.management.jmxremote.authenticate=false &lt;br&gt;
-Dcom.sun.management.jmxremote.local.only=false&lt;/code&gt;&lt;/p&gt;

&lt;p&gt;Open VisualVM locally and setup a new JMX connection with SSL disabled.&lt;/p&gt;

&lt;p&gt;Note: make sure the server is not open to the public internet!&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
