<?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: Jose Miguel</title>
    <description>The latest articles on DEV Community by Jose Miguel (@josemiguelq).</description>
    <link>https://dev.to/josemiguelq</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%2F672730%2F694a9e04-d5d2-4cdf-9ecd-0deb9c50937b.jpeg</url>
      <title>DEV Community: Jose Miguel</title>
      <link>https://dev.to/josemiguelq</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/josemiguelq"/>
    <language>en</language>
    <item>
      <title>From PHP to Clojure - pt1</title>
      <dc:creator>Jose Miguel</dc:creator>
      <pubDate>Wed, 15 Dec 2021 12:08:35 +0000</pubDate>
      <link>https://dev.to/josemiguelq/from-php-to-clojure-pt1-3p99</link>
      <guid>https://dev.to/josemiguelq/from-php-to-clojure-pt1-3p99</guid>
      <description>&lt;p&gt;Summary&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Knowing the languages&lt;/li&gt;
&lt;li&gt;File extension&lt;/li&gt;
&lt;li&gt;
Environment &lt;/li&gt;
&lt;li&gt;
Dependency manager &lt;/li&gt;
&lt;li&gt;
Typehint &lt;/li&gt;
&lt;li&gt;
Data structures &lt;/li&gt;
&lt;li&gt;Hello world&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;August 17, year 2021. Recently I started working with Clojure after a long time using PHP, Java, Javascript. I was fear about learn this new technology.&lt;/p&gt;

&lt;p&gt;I decided write my first impression so far. If you are intending change your stack or just wanna do it for fun, it could help you.&lt;/p&gt;

&lt;h2&gt;
  
  
  Knowing the language
&lt;/h2&gt;

&lt;h3&gt;
  
  
  PHP
&lt;/h3&gt;

&lt;p&gt;May you already read  &lt;a href="https://eev.ee/blog/2012/04/09/php-a-fractal-of-bad-design/"&gt;PHP&lt;/a&gt;, this article was wrote in 2012. In 2021 the PHP environment has grow a lot as syntax and  &lt;a href="https://www.techempower.com/benchmarks/"&gt;performance&lt;/a&gt;. Nowadays you should use typehint, you can use improves like  &lt;a href="https://www.swoole.co.uk/"&gt;Swoole &lt;/a&gt;. But it still have some inconsistencies in the language, you can read more about how impressive PHP can be to nowadays on this &lt;a href="https://bulletproofphp.dev/yes-php-is-worth-using"&gt;link&lt;/a&gt; .&lt;/p&gt;

&lt;h3&gt;
  
  
  Clojure
&lt;/h3&gt;

&lt;p&gt;It is a Lisp based language, and commonly Lisp was used to mathematic propose; and may you have seen Clojure examples like dividing, summing or handling with numbers and math stuffs on the internet, but it could be used in another ways. Immutability also is the best and it provides a thread safe programming, all the benefits of functional programming can be a a good approach.&lt;/p&gt;

&lt;h2&gt;
  
  
  Environment
&lt;/h2&gt;

&lt;p&gt;Under the hood, Clojure use Java environment, so you need the SDK and JVM to run your project, by the way, you can use Java classes and features in your project. The same affirmative is used about how erros's stack trace are shown and you still not free from NullPointerException.&lt;br&gt;
Clojure is a compiled language, so unlike php, you need to compile first in order to generate the jar file. May you are wonder if you have to wait the compiler always during your test, but thats not true. You can use  &lt;a href="https://clojure.org/guides/repl/introduction"&gt;REPL&lt;/a&gt; (standing for Read-Eval-Print Loop) and it will allow you to interact with a running Clojure program and modify it, by evaluating one code expression.&lt;br&gt;
To run a php script, you need install PHP in you system (mr obvious) and it is too simple on Linux based system, otherwise if you want run a script over http you need a PHP-Fpm or runners like  &lt;a href="https://roadrunner.dev/"&gt;Roadrunner&lt;/a&gt; or Swoole.&lt;/p&gt;
&lt;h2&gt;
  
  
  Dependency manager
&lt;/h2&gt;

&lt;p&gt;As you have  &lt;a href="https://getcomposer.org/"&gt;composer&lt;/a&gt;  for PHP, you have  &lt;a href="https://leiningen.org/"&gt;Leiningen&lt;/a&gt; for Clojure projects. With Leiningen you can start a new project and pull libraries dependencies to use in your project. It works like Composer with a set of commands to setup you project setting, as you need a composer.json you need a project.clj do write the configurations.&lt;br&gt;
Below you have a comparison between this two file configurations for clojure and PHP&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight clojure"&gt;&lt;code&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nf"&gt;defproject&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="n"&gt;my-project&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;"0.1.0-SNAPSHOT"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="no"&gt;:description&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;"my-project-desc"&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="no"&gt;:url&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;""&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="no"&gt;:license&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="no"&gt;:name&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;"MIT"&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="no"&gt;:dependencies&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[[&lt;/span&gt;&lt;span class="n"&gt;lib-dep-1&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;"0.0.1"&lt;/span&gt;&lt;span class="p"&gt;]]&lt;/span&gt;&lt;span class="w"&gt;
  &lt;/span&gt;&lt;span class="no"&gt;:aliases&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="s"&gt;"script-here"&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;"./command"&lt;/span&gt;&lt;span class="w"&gt;  &lt;/span&gt;&lt;span class="s"&gt;"arguments"&lt;/span&gt;&lt;span class="p"&gt;]})&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight json"&gt;&lt;code&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"name"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="s2"&gt;"my-project"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"description"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="s2"&gt;"my-project-desc"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"license"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"MIT"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"requires"&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
        &lt;/span&gt;&lt;span class="nl"&gt;"lib-dep-1"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s2"&gt;"0.0.1"&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;},&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="nl"&gt;"scripts"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="nl"&gt;"script-here"&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="w"&gt;
              &lt;/span&gt;&lt;span class="s2"&gt;"./command"&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;&lt;span class="w"&gt;
              &lt;/span&gt;&lt;span class="s2"&gt;"arguments"&lt;/span&gt;&lt;span class="w"&gt;
          &lt;/span&gt;&lt;span class="p"&gt;],&lt;/span&gt;&lt;span class="w"&gt;
    &lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Typehint
&lt;/h2&gt;

&lt;p&gt;Since PHP 7 an so on, typehints has been becoming a popular and necessary feature in PHP, and before this version, you could use any kind of return types or arguments. Nowadays PHP &amp;gt; 8 become more strongly typed, but you will not find types in Clojure! May you are worried how it could work, Clojure is a functional language and it runs in a Java strongly typed environment, under the hood Clojure cast some primitive values. Functions like division could return a Ration, float or BigInt and you can find some examples  &lt;a href="https://clojure.org/reference/data_structures#_bigint_and_bigdecimal_literals"&gt;here&lt;/a&gt; .&lt;br&gt;
Otherwise you can use tools like  &lt;a href="https://clojure.org/guides/spec"&gt;clojure.spec&lt;/a&gt; or  &lt;a href="https://github.com/plumatic/schema"&gt;Plumatic&lt;/a&gt; to validate function's inputs and outputs. Daily I have been using Plumatic and I do love it how it useful and beautiful.&lt;/p&gt;
&lt;h2&gt;
  
  
  Data structures
&lt;/h2&gt;

&lt;p&gt;In Js we called object, in Python is called dictionary, in Java it is Hashes, in Clojure we called map. That is a very useful to represent key value structures.&lt;/p&gt;

&lt;p&gt;PHP is an array based language, almost everything can be represented as an array. For Clojure we have an array too, but here it not work with any kind of structure like in php, we call it &lt;code&gt;vectors&lt;/code&gt; and it is just a list, list of lists, list of values or list of maps. Recently PHP release a new function  &lt;a href="https://www.php.net/manual/en/function.array-is-list.php"&gt;array_is_list&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Set structure is my favorite, it is a collections of unique values, unlike &lt;code&gt;vector&lt;/code&gt; you can't repeat a value in a set. In PHP we can repeat a value in an array, for example:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="nv"&gt;$array&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s1"&gt;'a'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="s1"&gt;'a'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt; &lt;span class="c1"&gt;// can exists a repeated value&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight clojure"&gt;&lt;code&gt;&lt;span class="o"&gt;#&lt;/span&gt;&lt;span class="p"&gt;{&lt;/span&gt;&lt;span class="no"&gt;:a&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="no"&gt;:a&lt;/span&gt;&lt;span class="p"&gt;}&lt;/span&gt;&lt;span class="w"&gt;   &lt;/span&gt;&lt;span class="c1"&gt;;This is not allowed&lt;/span&gt;&lt;span class="w"&gt;

&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;There are more data structures, but for now these are the most used for me daily. As soon as possible I publish more about how I keep using Clojure so on.&lt;/p&gt;

&lt;h2&gt;
  
  
  Hello world
&lt;/h2&gt;

&lt;p&gt;This article could not miss an example of hello-world in both languages. First you will need setup the dependencies wrote here. &lt;/p&gt;

&lt;p&gt;To a simple script in PHP create a file hello-word.php&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight php"&gt;&lt;code&gt;&lt;span class="cp"&gt;&amp;lt;?php&lt;/span&gt;
&lt;span class="k"&gt;echo&lt;/span&gt; &lt;span class="s1"&gt;'Hello world'&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then execute&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;php hello-world.php
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Last but not least, a Clojure example. Create a hello-word.clj&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight clojure"&gt;&lt;code&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nb"&gt;print&lt;/span&gt;&lt;span class="w"&gt; &lt;/span&gt;&lt;span class="s"&gt;"hello-world"&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt;&lt;span class="w"&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;You need start REPL and run the script&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nv"&gt;$ &lt;/span&gt;lein repl
&lt;span class="o"&gt;=&amp;gt;&lt;/span&gt; &lt;span class="o"&gt;(&lt;/span&gt;clojure.main/load-script &lt;span class="s2"&gt;"hello-world.clj"&lt;/span&gt;&lt;span class="o"&gt;)&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



</description>
    </item>
    <item>
      <title>Como se preparar para uma entrevista técnica</title>
      <dc:creator>Jose Miguel</dc:creator>
      <pubDate>Fri, 23 Jul 2021 14:08:33 +0000</pubDate>
      <link>https://dev.to/josemiguelq/como-se-preparar-para-uma-entrevista-tecnica-43ek</link>
      <guid>https://dev.to/josemiguelq/como-se-preparar-para-uma-entrevista-tecnica-43ek</guid>
      <description>&lt;p&gt;No ultimo ano tenho entrevistado vários candidatos para o meu time e outros times, foram mais de 180 entrevistas ao todo. Esta experiência foi muito enriquecedora pois serviu como um espelho para como eu lidava com minha carreira, eu tinha sempre em mente que não podia cobrar algo que eu mesmo não fazia. Estas entrevistas eram sempre feitas em duplas, pois assim como Code Review, duas pessoas terão visões de ângulos diferentes.&lt;br&gt;
O momento da entrevista é uma via de mão dupla, cabe ao entrevistador ter empatia e explorar ao máximo os assunto e cabe ao candidato expor suas ideias com objetividade e esta com certeza não é uma tarefa fácil para nenhum dos lados.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Do seu lado como entrevistado, pode estar nervoso e apreensivo; do lado do entrevistador a tarefa de avaliar toda sua experiência em um tempo relativamente curto e muito mais que avaliar o que você sabe hoje é ver o potencial que você tem.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;h2&gt;
  
  
  Procure sobre a empresa
&lt;/h2&gt;

&lt;p&gt;A empresa esta com vaga aberta, porém e necessário que você e ela estejam dispostos, por isso pesquise antes, veja com quais tecnologias com as quais  ela trabalha, como é a participação na comunidade.&lt;br&gt;
Existem sites como o Glassdoor para que você tenha uma ideia de como é o ambiente de trabalho.&lt;br&gt;
Caso faça uma pesquisa antes será capaz de abordar assuntos com mais objetivamente, pode contextualizar melhor suas atuações e desafios. Por exemplo, caso você saiba que a empresa usa Kafka e você nunca usou, pode estudar sobre e expor mais sobre desafios que teve com tecnologias similares.&lt;/p&gt;

&lt;h2&gt;
  
  
  Revise seu perfil no linkedin
&lt;/h2&gt;

&lt;p&gt;Em tempos onde não usamos mais papeis e usamos e-mail e mais Slack e outras ferramentas, ter um perfil atualizado será um diferencial para sua carreira.&lt;br&gt;
Ao colocar as suas experiências no perfil, diga com quais tecnologias trabalhou e de um contexto, seja explicito a diferenciar entre o que você teve real contato e o que seu squad/time como um todo fez.&lt;/p&gt;

&lt;h2&gt;
  
  
  Saiba onde quer chegar
&lt;/h2&gt;

&lt;p&gt;Ter um objetivo em mente do que quer estudar no próximo mês, semestre ou ano pode demonstrar que além de ter conhecimento de algumas tecnologias também sabe administrar seus estudos.&lt;br&gt;
Se você estiver iniciando agora na carreira e for uma vaga de estagio ou júnior, esta parte será um diferencial pois demonstrara o quanto você vai além e mostra o seu potencial.&lt;/p&gt;

&lt;h2&gt;
  
  
  Seja sincero
&lt;/h2&gt;

&lt;p&gt;Muitas vezes na ansiedade de querer pegar a vaga acabamos entrando em assuntos que não dominamos e isso pode acabar sendo negativo. Muitas vezes a empresa para a qual você esta aplicando usa tecnologias que você nunca usou, o mais importante e você demonstrar que domina muito bem os assuntos que trabalhou. &lt;br&gt;
E, por favor, evite colocar no seu currículo e linkedin todas as tecnologias que a empresa como um todo usa, coloque somente as que você teve contato o suficiente. Por exemplo, se a empresa usa Lambda e você nunca teve a oportunidade de mexer com isso lá, mas você coloca no seu linkedin, pode ser que você seja questionado e não saberá responder ou será um resposta rasa.&lt;br&gt;
Evite tentar explicar em assuntos que não conhece, seja sincero(a) quanto a isso, o entrevistador ira entender e considerar, mas também diga o quanto esta aberto ou interessado a saber mais.&lt;/p&gt;

&lt;h2&gt;
  
  
  Mostre o quanto você gosta de ir além
&lt;/h2&gt;

&lt;p&gt;Saindo da bolha das grandes metrópoles e centros de tecnologia, pode ser que você nunca tenha trabalhado com uma quantidade enorme de dados, ultimas tecnologias, microservicos, etc. E isto e normal.&lt;br&gt;
Evite usar argumentos como "Não estudei sobre testes pois a empresa não deixava", "Eu não conhecia sobre X pois a empresa não usava". Estes problemas infelizmente ainda acontecem em alguma empresas e em muitos casos estas empresas inibem este tipo perfil de profissional, porém comente como isso não te impediu de estudar em casa, em projetos pessoais, etc.&lt;br&gt;
Use frases como: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;"Na minha empresa era deploy por FTP, mas eu vi como existem ferramentas de CI/CD"&lt;/li&gt;
&lt;li&gt;"Acredito que uma coisa que poderia melhorar seria se tivesse code review"&lt;/li&gt;
&lt;li&gt;"Nao temos monitoramento das aplicações, mas vi que existe a ferramenta X, Y"&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Este ponto e ainda mais crucial para seniores, demonstra como tem a capacidade analítica de entender problemas, propor soluções e tentar implantá-las, dependendo da empresa pode ser que não te escutem, mas você tentou e ganhou experiência e essa postura vale ouro.&lt;/p&gt;

&lt;h2&gt;
  
  
  Questione
&lt;/h2&gt;

&lt;p&gt;Durante a entrevista todos ficamos nervosos, você pode ter sido entrevistado centenas de vezes ou já ter sido entrevistador, mas o frio na barriga dificilmente some. Por isso já deixe anotado algumas perguntas antes da entrevista começar.&lt;br&gt;
Faça perguntas relacionadas ao fluxo de trabalho, tecnologias, como as tarefas chegam, como é o ambiente.&lt;/p&gt;

&lt;h2&gt;
  
  
  Como você ajuda a comunidade
&lt;/h2&gt;

&lt;p&gt;Disclaimer: É errado a ideia que bons devs devem ser bons palestrantes, ter uma desenvoltura em publico, isso não pode impedir a carreira de ninguém, por isso fique tranquilo.&lt;br&gt;
Quando falo em comunidade não digo algo somente relacionado com comunidades mundiais ou nacionais, eu me refiro a comunidade no seu time, na sua empresa. Demonstre como você ajuda eles, esta ajuda pode ser um code review, pode ser 10 minutos que você compartilhou com alguém sobre algo, não necessariamente e uma palestra.&lt;br&gt;
Comente como você tem praticado isso sistematicamente, por exemplo, conte como você gosta de contribuir com assuntos que você domina X vezes por semana. Se você for um sênior isto também e importante, um sênior não e um bombeiro em sua essência, também e aquele capaz de compartilhar conhecimento e evoluir com seu time.&lt;/p&gt;

</description>
      <category>interview</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
