-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathindex.xml
189 lines (177 loc) · 18 KB
/
index.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Nurfatima Jandarova</title>
<link>https://nurfatimaj.com/</link>
<atom:link href="https://nurfatimaj.com/index.xml" rel="self" type="application/rss+xml" />
<description>Nurfatima Jandarova</description>
<generator>Wowchemy (https://wowchemy.com)</generator><language>en-us</language><copyright>© 2021 Nurfatima Jandarova</copyright><lastBuildDate>Tue, 21 Sep 2021 14:00:00 +0200</lastBuildDate>
<image>
<url>https://nurfatimaj.com/media/icon_hu0278c7f29914ab484e878f9ad16081c2_19539_512x512_fill_lanczos_center_3.png</url>
<title>Nurfatima Jandarova</title>
<link>https://nurfatimaj.com/</link>
</image>
<item>
<title>Essays in Applied Microeconomics</title>
<link>https://nurfatimaj.com/talk/essays-in-applied-microeconomics/</link>
<pubDate>Tue, 21 Sep 2021 14:00:00 +0200</pubDate>
<guid>https://nurfatimaj.com/talk/essays-in-applied-microeconomics/</guid>
<description><p>You can register to attend at the <a href="https://www.eui.eu/events?id=541358" target="_blank" rel="noopener">EUI website</a>.</p>
</description>
</item>
<item>
<title>[Not] easy personal website</title>
<link>https://nurfatimaj.com/post/tech-fun/personal-page-quest/</link>
<pubDate>Sun, 20 Oct 2019 17:45:00 +0200</pubDate>
<guid>https://nurfatimaj.com/post/tech-fun/personal-page-quest/</guid>
<description><p><strong>It all started with my supervisor filling in a data request form for the joint project and &ldquo;complaining&rdquo; that his RAs still don&rsquo;t have their websites. I thought that I&rsquo;d need one in a year&rsquo;s time anyway, so why not do it now?</strong></p>
<p>Maybe you can guess from the previous post, but I am a person who just doesn&rsquo;t like unnecessarily duplicating work. Therefore, I wanted my website generate my CV document since they share most of the information.</p>
<p>At this point, you probably think that I have too much time to waste. You are probably right. But I had already started this journey and I needed to bring it to a satisfactory finish. And I also like to think that it benefits future me by freeing up a little bit of time each year from needing to update profile twice.</p>
<p>The general idea is simple: to have all my CV entries in a kind of database and let the algorithms put them both to website and CV document. We are living in an age of artificial intelligence after all. Should be easy peasy!</p>
<h2 id="wordpress">WordPress</h2>
<p>My first attempt was WordPress because of rich functionality. In particular, it already has some special CV plugins that save my information into a specific database and build CV pages using this database.
However, making it output same information into a beautiful pdf has proven to be very difficult to do using open source solutions. In a hindsight, I must say that WordPress is also an overkill for such a simple personal page project.</p>
<h2 id="hugo">Hugo</h2>
<p>Luckily, my boyfriend knows a lot of things and has introduced me to the world of Hugo. It is a simple, free, static-site generator with the support of data-driven content.
The financial benefit of Hugo is that I can host it for free on GitHub; thus, only paying for a custom domain name.
Personally, it feels that comparing Hugo to WordPress is like comparing LaTeX to Word.</p>
<p>While, it may be less user-friendly than WordPress, it would have only taken me couple of hours to have my site up and running.
However, I needed a functionality not offered by ready-to-use themes. So, I needed some tweaking.</p>
<h3 id="hugo-resumehttpsgithubcomeddiewebbhugo-resume"><a href="https://github.com/eddiewebb/hugo-resume" target="_blank" rel="noopener">hugo-resume</a></h3>
<p>First, I was working with <a href="https://github.com/eddiewebb/hugo-resume" target="_blank" rel="noopener">hugo-resume</a> theme. It had the most important feature I needed: data-driven content.</p>
<p>But how do I get my CV as a pdf file? I had an idea. I could generate a second page that looks exactly like I want my CV document to look and simply print it to pdf in the browser.
To make it a bit more explicit, I have also included a button in the home page that opens the printer dialogue attempting to print the CV page. All print dialogues should have &lsquo;Save as PDF&rsquo; option.</p>
<p>It worked, but it wasn&rsquo;t a perfect solution.</p>
<ol>
<li>Showing a print window with a possible choice of saving a file as pdf is making too many suppositions on behalf of the user. I would still prefer having a link to a pdf file.</li>
<li>I have made so many tweaks to the theme that it basically became a completely new theme. Which meant that there are many places, where a potential bug could be sitting. Which meant maintenance would require quite a bit of my time.</li>
<li>Related to the previous one, I did not like the visual appeal of the original theme and had to add style changes as well. This of course increases probability of having a buggy code.</li>
</ol>
<h3 id="hugo-academichttpsgithubcomgcushenhugo-academic"><a href="https://github.com/gcushen/hugo-academic" target="_blank" rel="noopener">hugo-academic</a></h3>
<p>It is porbably the most popular theme on Hugo. And you can tell it from the rigour of the theme&rsquo;s documentation. The developers have thought about many features.
Except for the possibility of sending the website data into a beautiful pdf.</p>
<p>Tweaking this website is easy and difficult at the same time.</p>
<ol>
<li>Why is it difficult? Precisely because of its flexbility, the structure of the theme is not the easiest to understand.
So, even if I knew exactly what I want to tweak, it took me some time to understand where should I apply those tweaks. Beyond beginner knowledge of Hugo is required.</li>
<li>Why is it easy? Because the files are organized into nice small chunks divided by functionality and there is a very good documentation with a step-by-step guide of
creating your own &ldquo;widget&rdquo;. Unlike the previous theme, this one has been adapted to allow different user tastes for looks. I only needed to add a bit of code that converts CV to pdf file.</li>
</ol>
<p>After having had some experience with Hugo templating, creating a new page with information for CV did not take much time. But how do I get a link to a pdf file instead of getting a print dialogue?
Initially, I thought of printing to pdf before sending the data to the webpage. That is, I build website on my computer, send the generated page to printer, save it as pdf, add the link to this pdf on
the home and send the website to GitHub. To automate this process, I used <code>chrome</code> command line interface, the worst solution I have tried (except for the idea of two separate files).
The thing with <code>chrome</code> CLI is that it doesn&rsquo;t work properly with chrome running in the background (and even without). The resulting pdf file always had different levels of white overlay.</p>
<p>I was very unhappy about this. And was thinking &ldquo;Oh, if only there was a way to let LaTeX generate this poor pdf!&rdquo;. But the problem with this is that I don&rsquo;t know how to access website information
from within LaTeX.</p>
<p>The solution came to me the same way as the chemical table came to Mendeleev - in the dream. The idea - and current solution - is to have an auxiliary html page for CV with LaTeX code.
For example, instead of <code>&lt;h2&gt;Contact Information&lt;/h2&gt;</code> for section names I put <code>\section*{Contact Information}</code> into the template. Then, I run Python script to extract the LaTeX codes
and supply them to <code>pdflatex</code> to generate a good-looking pdf. This is the best solution as it allows me</p>
<ol>
<li>to have my CV information in one place that fuels both webpage and CV document, and</li>
<li>to control the look of CV document via latex commands.</li>
</ol>
<h2 id="final-words">Final words</h2>
<p>I surely hope that this is the end of this saga and I will not have another crazy idea to add to the CV 😅 Apart from that, I feel this is the ideal solution to my initial request!</p></description>
</item>
<item>
<title>Automatic documentation</title>
<link>https://nurfatimaj.com/post/tech-fun/automatic-documentation/</link>
<pubDate>Sat, 17 Aug 2019 16:33:42 +0600</pubDate>
<guid>https://nurfatimaj.com/post/tech-fun/automatic-documentation/</guid>
<description><p><strong>At the beginning of PhD I used to have at most one project at a time. Keeping track of things was easy. Along the way, I accumulated a portfolio of projects. For each of them I write tons of codes (partly because my programmer sister has taught me that having one big file with everything is bad). One day I found myself looking at my own code of three months earlier and spending half a day to retrace its logic. There were dozens of errors before I was able to run everything smoothly without forgetting some annoying little detail.</strong></p>
<p>Then it became clear to me that I need to keep a proper documentation. Hopefully, it is also helpful when one day the papers get published. Be it couple of files, I could have done it all manually. Or maybe not&hellip; Just the thought that I would need to keep track of twice as many documents sends me to shiver. Search for some ready solution did not yield much results: either my target programming languages are too &ldquo;simple&rdquo;, or the output is not what I was looking for.</p>
<p>After a little thinking it struck me that automatic documentation is nothing more than a text parsing exercise. So I set out to write my own script. It searches for all new or recently modified code files in my project folder, parses the text and pastes it to a markdown file in my documentation subfolder. In this project I rely a lot on git version control and remote repository that keeps all important code files.</p>
<h2 id="technical-bits">Technical bits</h2>
<h3 id="code-structure">Code structure</h3>
<p>The benefit of having an automatic documentation generation script is that I can keep all documentation-relevant information inside the code file. Then keeping documentation up-to-date is only a matter of updating comments inside the code file.</p>
<h3 id="special-comment">Special comment</h3>
<p>Not all comments are meant to be inside a documentation file. Detecting the relevant code blocks is solved by including a special comment block (<code>#'</code> or <code>*'</code> for Stata) which I have borrowed from R. So all lines that start with the special sign will be part of the documentation file.</p>
<h3 id="parsing-and-outputing">Parsing and outputing</h3>
<p>After detecting the special comment block, the script is ridiculously simple. Basic idea is to strip away the special comment sign and simply copy the rest of the text into a markdown file. Of course, for this to work, the documentation comment block should follow a simple <a href="https://www.markdownguide.org/cheat-sheet" target="_blank" rel="noopener">markdown syntax</a>.</p>
<p>My documentation script applies additional rules to certain lines, which, again borrowing from R, are identified with special tags (for example, <code>@title</code> for document title). These rules work by identifying if a line starts with one of the special tags, stripping the tag away and outputing the rest of the text in a desired way. For example, when a line starts with <code>@title</code>, I insert to the title text hyperlink to the actual code file. The linking is possible because I am using git version control with a remote repository.</p>
<p>To a more technically inclined reader, all that my script does here is continuously apply <code>sed</code> to the extracted lines and <code>echo</code> the output into a markdown file.</p>
<h3 id="input">Input</h3>
<p>The script works both with single code file and with a project folder that contains the code files. That is, it is really easy to mass generate documentation files.</p>
<p>However, not all the codes in the folder need documentation; for example, a script from workshop I use as a reference. My script relies on git version control in deciding which files are relevant: if it is controlled by git, then it is worth a documentation.</p>
<h3 id="publishing">Publishing</h3>
<p>Since I am using git and remote repository, I am also using wiki submodule to publish the documentation files. While GitHub requires public repository for wiki functionality to work, Bitbucket allows it on private repositories too. The path to the documentation files inside wiki follows is similar to the code file path inside project directory.</p>
<h3 id="if-i-have-time-in-the-future-">If I have time in the future, &hellip;</h3>
<p>&hellip; I would like to make the script a bit more flexible. Currently, my script parses and outputs documentation information line by line. Therefore, it can neither reorder sections nor augment with information found later under the same section heading. The output will look exactly the same way as the comment block. So, a nice extension would have been to extract all section-relevant data into a separate array and then output everything together. This would allow special comments organized like this</p>
<pre><code>#' @section1
#' comment 1
#'
#' @section2
#' comment 1
#'
#' @section1
#' comment 2
</code></pre>
<p>to appear correctly in the documentation file: two comments under section 1 and one comment under section 2.</p>
<h2 id="summary">Summary</h2>
<p>Now, I can just click on respective wiki post and see all relevant information: usage, argument types and accepted values, description, input and output files. No need to traverse the code to make sense of it. Just work on the actual task.</p></description>
</item>
<item>
<title>CV</title>
<link>https://nurfatimaj.com/print/</link>
<pubDate>Tue, 01 Jan 2019 00:00:00 +0000</pubDate>
<guid>https://nurfatimaj.com/print/</guid>
<description></description>
</item>
<item>
<title></title>
<link>https://nurfatimaj.com/admin/config.yml</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://nurfatimaj.com/admin/config.yml</guid>
<description></description>
</item>
<item>
<title>Does intelligence shield from negative family shocks?</title>
<link>https://nurfatimaj.com/publication/work-in-progress/unemp-parent-intel/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://nurfatimaj.com/publication/work-in-progress/unemp-parent-intel/</guid>
<description></description>
</item>
<item>
<title>Fertility Choice and Intelligence in Developed Countries</title>
<link>https://nurfatimaj.com/publication/work-in-progress/fertility_iq/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://nurfatimaj.com/publication/work-in-progress/fertility_iq/</guid>
<description></description>
</item>
<item>
<title>From bad to worse: long-term effects of recession in adolescence</title>
<link>https://nurfatimaj.com/publication/work-in-progress/edu-unemp/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://nurfatimaj.com/publication/work-in-progress/edu-unemp/</guid>
<description></description>
</item>
<item>
<title>Intelligence and Tertiary Education</title>
<link>https://nurfatimaj.com/publication/work-in-progress/uni-sorting-genetics/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://nurfatimaj.com/publication/work-in-progress/uni-sorting-genetics/</guid>
<description></description>
</item>
<item>
<title>Multiple Imputation of University Degree Attainment</title>
<link>https://nurfatimaj.com/publication/work-in-progress/mi-uni/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://nurfatimaj.com/publication/work-in-progress/mi-uni/</guid>
<description></description>
</item>
<item>
<title>Privacy</title>
<link>https://nurfatimaj.com/privacy/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://nurfatimaj.com/privacy/</guid>
<description><p>This website uses cookies to gather analytical information processed by the Google Analytics 4. The analytical information concerns page views only. As part of the report, I can see aggregated statistics about</p>
<ul>
<li>name of pages visited,</li>
<li>country from where pages were visited,</li>
<li>whether a visit came from external links, or by directly typing the address.</li>
</ul>
<p>The cookie consent is opt-in type. This means that all of the above information is only collected, if a user has specifically given consent for data collection.</p>
</description>
</item>
</channel>
</rss>