Re: BokehGUI in GNU Radio 4 (GSOC)

Ziad Haithem 202201027 <[email protected]> Tue, 31 Mar 2026 19:05:03 +0200
Newsgroups gmane.comp.gnu.radio.general
Message-ID <CAN9g7ZypZZ+a4xiFDDTixgHzN9YAdv9b9zRGpgo2Eir773w+4Q@mail.gmail.com>
--0000000000008c717a064e54f876
Content-Type: multipart/alternative; boundary="0000000000008c717a064e54f875"

--0000000000008c717a064e54f875
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

good news, issue has been rectified, submission has been completed

My blood pressure is a bit high, however i am excited to hopefully be a
part of GNU radio for GSOC

Thank you to Cyrille and the rest of the community for the valuable
feedback you have all provided me, i have already learned quite a bit.

On Tue, Mar 31, 2026 at 6:38=E2=80=AFPM Ziad Haithem 202201027 <
[email protected]> wrote:

> Hello Cyrille and community, i was putting the finishing touches on my
> proposal and was about to submit when to my surprise, the submission was
> closed, I looked in the timeline on the gsoc page and it shows that the
> deadline for my time is 8PM so i am unsure why it closed
>
> Here is my proposal
>
> I know i probably can no longer be accepted into the program, if an
> exception can be made that would be great, i thought i was submitting an =
1
> hour and 30 mins early but instead i am apparently 30 mins late, i have
> attached a screen shot of the timeline on my end
>
> On Mon, Mar 30, 2026 at 1:45=E2=80=AFPM Ziad Haithem 202201027 <
> [email protected]> wrote:
>
>> Thanks for the feedback this clears up quite a bit
>>
>> 3,1) Ill explicitly state that the library is undecided and try to keep
>> discussion on the core architecture library neutral, i'll add it as a
>> deliverable to be done hopefully by the the first week of gsoc, it'll
>> contain compiling a list of options, testing and final selection of the
>> library.
>>
>> 2) I'll incorporate more testing throughout the timeline instead of
>> keeping all of it to the end
>>
>> ill try to expand a bit on risks/risk mitigation & prioritization in the
>> proposal
>>
>> <https://www.avast.com/sig-email?utm_medium=3Demail&utm_source=3Dlink&ut=
m_campaign=3Dsig-email&utm_content=3Dwebmail>
>> Virus-free.www.avast.com
>> <https://www.avast.com/sig-email?utm_medium=3Demail&utm_source=3Dlink&ut=
m_campaign=3Dsig-email&utm_content=3Dwebmail>
>> <#m_4169463131358288870_m_1851057013599080402_m_8110172842132397564_DAB4=
FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>
>>
>> On Mon, Mar 30, 2026 at 11:46=E2=80=AFAM Cyrille Morin <cyrille.morin@in=
ria.fr>
>> wrote:
>>
>>> Hi Ziad,
>>>
>>> To give you some feedback, I'll go out of order:
>>>
>>> 3) I believe deciding on the exact library to use is an important first
>>> step, and is part of the work to be done as it requires time to try out=
 the
>>> different options. So having that decision as part of the gsoc itself i=
s a
>>> good thing. It could even be thought of as a deliverable
>>>
>>> 1) The discussion of pros and cons is good, but the exact choice might
>>> be dependent on the specificities of the chosen library. For instance,
>>> ImGUI might be easier to integrate directly into C++ blocks than Bokeh'=
s
>>> Python
>>>
>>> 2) In general, it's good practice to test as you go. Making all the
>>> sinks and widgets before starting to test them might leave you with not=
hing
>>> working, or having to rewrite everything if you find systemic bugs in y=
our
>>> code or architecture.
>>>
>>> Expanding on the topic of risks. It could be good to think about, and
>>> detail where you could have some wriggle room to tackle unexpected issu=
es
>>> and/or plan B, prioritization in case time runs short.
>>> *Cyrille MORIN*
>>> *Ing=C3=A9nieur SED*
>>> *=C3=89quipe MARACAS*
>>>
>>> [image: Logo Inria]
>>> Centre Inria de Lyon
>>>
>>> Laboratoire CITI
>>> Campus La Doua - Villeurbanne
>>> 6 avenue des Arts
>>> F-69621 Villeurbanne
>>>
>>> https://team.inria.fr/maracas/
>>> Le 27/03/2026 =C3=A0 18:52, Ziad Haithem 202201027 a =C3=A9crit :
>>>
>>> Sorry for the delay in my reply, things took a bit longer than i expect=
ed
>>>
>>> Thanks for the answers
>>>
>>> I went ahead and looked up some developer tutorials for GR4 and i think
>>> i have a good enough of an understanding now to be able to write a good
>>> proposal,
>>>
>>> Here is the google doc fo my proposal with the technical aspects
>>> complete and that's mainly what i would like to get feedback on
>>>
>>> https://docs.google.com/document/d/18-Tik6fIwv6KZVvqpIYjX_cKrxYV9c4MihX=
hG65SPKg/edit?usp=3Dsharing
>>>
>>> Specifically what i would like feedback on is the following
>>> 1) My main design choice on the core infrastructure and if my
>>> rationalization behind it is sufficient (I detail 3 approaches in my
>>> proposal and compare them)
>>> 2) I lack quite a bit of experience with QA & documentation and so thos=
e
>>> parts of the proposal may be a bit lackluster any feedback on that woul=
d
>>> definitely help
>>> 3) I have essentially pushed back the question of what library for
>>> browser plotting will be used (Bokeh, imgui, etc) to being part of the
>>> first week of work, as i feel i wont have enough time to do an actual g=
ood
>>> assessment before the proposal deadline, is that okay or do i need to
>>> specify the library which will be used ?
>>>
>>> Obviously any feedback on anything else is welcome, I am sure I have so
>>> much to learn !
>>>
>>> Since its a google doc, feedback via comments within the document would
>>> be easier than email i think, however whatever is preferable for you is=
 fine
>>>
>>>
>>> On Wed, Mar 25, 2026 at 5:34=E2=80=AFPM Cyrille Morin <cyrille.morin@in=
ria.fr>
>>> wrote:
>>>
>>>> Hi Ziad,
>>>>
>>>> Having a running GR 4.0 with a custom OOT is certainly a good start,
>>>> well done!
>>>>
>>>> I'm definitely not in the best position to give advice on GR4 code
>>>> philosophy as I still need to start playing with it before GSoc starts=
.
>>>> But I believe you'll find the best and most up to date info in the
>>>> gnuradio4 repo itself, including the readmes in the /docs folder, and =
also
>>>> the 4.0.0-RC1 tag description which covers a lot of the current state
>>>>
>>>> I mention Bokeh in the project description because it's the dependency
>>>> we use for the current (GR3) version of the remote monitoring system, =
so we
>>>> know it can cover the main use case.
>>>> But it is far from perfect so we are open to using an other library
>>>> providing that same core use case of *remote* monitoring with plots
>>>> and interaction with widgets, with the added bonus of not requiring
>>>> anything installed on the remote computer.
>>>> So ImGUI, with its many flavours *could* be an interesting option with
>>>> better performance, nice plots... as long as it shows an efficient way=
 for
>>>> remote operation outside of the local browser.
>>>>
>>>> I hope it helps with some of your questions,
>>>>
>>>> Best
>>>> *Cyrille MORIN*
>>>> *Ing=C3=A9nieur SED*
>>>> *=C3=89quipe MARACAS*
>>>>
>>>> [image: Logo Inria]
>>>> Centre Inria de Lyon
>>>>
>>>> Laboratoire CITI
>>>> Campus La Doua - Villeurbanne
>>>> 6 avenue des Arts
>>>> F-69621 Villeurbanne
>>>>
>>>> https://team.inria.fr/maracas/
>>>> Le 24/03/2026 =C3=A0 04:40, Ziad Haithem 202201027 a =C3=A9crit :
>>>>
>>>> Dear GNU Radio Community,
>>>>
>>>> I have decided that my gsoc proposal/project will be on the "BokehGUI
>>>> in GNU radio 4.0" idea
>>>> 1. Proof of Concept & Progress
>>>>
>>>> To get comfortable with the GR 4.0 , I=E2=80=99ve developed a small Po=
C . It
>>>> uses a signal generator block into a custom OOT module that publishes =
data
>>>> to a socket via ZMQ. A Python script then subscribes to that socket an=
d
>>>> plots the sine wave in the browser in real-time using Bokeh.
>>>>
>>>> Main goal is to just show i was able to take something generated by GR=
4
>>>> and get it displayed in the browser
>>>>
>>>>    -
>>>>
>>>>    *Repo:* [
>>>>    https://github.com/ZiadFahmyZewailCity/gr4.0-bokehgui/tree/gettingF=
amiliarWithDevelopment
>>>>    ]
>>>>    -
>>>>
>>>>    *Video Demo:* [Link to Video
>>>>    <https://drive.google.com/file/d/1-5VSE6BerbMY9ruzjn5oQxtQFzTD34lS/=
view?usp=3Dsharing>
>>>>    ]
>>>>
>>>> I've also worked through the GR3 beginner and OOT tutorials, and spent
>>>> time playing with ZMQ/Bokeh to ensure I can handle plotting and the da=
ta
>>>> flow between processes.
>>>> 2. Seeking Guidance on GR 4.0
>>>>
>>>> While I=E2=80=99m thrilled I got the PoC running, this is my first tim=
e working
>>>> with a codebase of this scale. My main concern is moving from "making =
it
>>>> work" to "making it right." What are some resources that'll help me de=
sign
>>>> and write code that "fits" with the design philosophy behind OOT modul=
es
>>>> for GR4. I feel like this will be very important for my proposal
>>>> 3. Use of bokeh
>>>> I wrote the POC in bokeh and focused on it when experimenting because
>>>> its what was mentioned in the project description and there are plenty=
 of
>>>> resources for it. However while researching I found that in European
>>>> GNU Radio Days
>>>> <https://wiki.gnuradio.org/index.php?title=3DEuropean_GNU_Radio_Days/2=
025> in
>>>> the next generation remote GUI section. "Imgui"  was considered a good
>>>> candidate to be used for wireless plotting for GNU Radio 4.0. Has the
>>>> community moved away from this opinion ? is it still present ? Should =
I
>>>> write my proposal with only one library in mind or be flexible and hav=
e
>>>> this been decided later on in development ?
>>>> 4. Why This Project?
>>>>
>>>> I initially looked for something with a bit more DSP and communication=
s
>>>> concepts. However this project feels important, and I decided to go wi=
th
>>>> something which would have an impact instead of wasting time thinking =
of a
>>>> custom project to propose that had me playing with some of the concept=
s i
>>>> was most interested in.
>>>>
>>>> I am really looking forward to the possibility of contributing to GNU
>>>> Radio this summer as part of GSOC. Thank you for your time and for any
>>>> pointers you can provide!
>>>>
>>>> cyberspectrum is best spectrum (I think the code word is for the
>>>> proposal only but one can never be too safe lol)
>>>>
>>>> Sincerely,
>>>> Ziad
>>>> --
>>>> Ziad Haithem Fahmy
>>>> ID:202201027
>>>>
>>>> Communications and Information Engineering Student
>>>>
>>>> Zewail City of Science, Technology and Innovation
>>>>
>>>> Ahmed Zewail Road, October Gardens, Giza 12578, Egypt
>>>> <https://goo.gl/maps/bbNTX7EMrbZA1Lhu7>
>>>>
>>>> www.zewailcity.edu.eg
>>>>
>>>>
>>>> 0120 205 7175
>>>>
>>>> Whatsapp number - 0109 479 1824
>>>>
>>>>
>>>>
>>>>

--0000000000008c717a064e54f875
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">good news, issue has been rectified, submission has been c=
ompleted<div><br></div><div>My blood pressure is a bit high, however i am e=
xcited to hopefully be a part of GNU radio for GSOC</div><div><br></div><di=
v>Thank you to Cyrille and the rest of the community for the valuable feedb=
ack you have all provided me, i have already learned quite a bit.</div></di=
v><br><div class=3D"gmail_quote gmail_quote_container"><div dir=3D"ltr" cla=
ss=3D"gmail_attr">On Tue, Mar 31, 2026 at 6:38=E2=80=AFPM Ziad Haithem 2022=
01027 &lt;<a href=3D"mailto:[email protected]">s-ziad.fahmy@ze=
wailcity.edu.eg</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" s=
tyle=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);pad=
ding-left:1ex"><div dir=3D"ltr">Hello Cyrille and community, i was putting =
the finishing touches on my proposal and was about to submit when to my sur=
prise, the submission was closed, I looked in the timeline on the gsoc page=
 and it shows that the deadline for my time is 8PM so i am unsure why it cl=
osed<div><br></div><div>Here is my proposal=C2=A0</div><div><br></div><div>=
I know i probably can no longer be accepted into the program, if an excepti=
on can be made that would be great, i thought i was submitting an 1 hour an=
d 30 mins early but instead=C2=A0i am apparently 30 mins late, i have attac=
hed a screen shot of the timeline=C2=A0on my end</div></div><br><div class=
=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Mon, Mar 30, 2026=
 at 1:45=E2=80=AFPM Ziad Haithem 202201027 &lt;<a href=3D"mailto:s-ziad.fah=
[email protected]" target=3D"_blank">[email protected]</a>&=
gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0=
px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div =
dir=3D"ltr"><div dir=3D"ltr">Thanks for the feedback this clears up quite a=
 bit<div><br></div><div>3,1) Ill explicitly=C2=A0state that the library=C2=
=A0is undecided and try to keep discussion on the core architecture=C2=A0li=
brary neutral, i&#39;ll add it as a deliverable to be done hopefully by the=
 the first week of gsoc, it&#39;ll contain compiling a list of options, tes=
ting and final selection=C2=A0of the library.</div><div><br></div><div>2) I=
&#39;ll incorporate=C2=A0more testing throughout the timeline instead of ke=
eping all of it to the end</div><div><br></div><div>ill try to expand a bit=
 on risks/risk mitigation &amp; prioritization in the proposal</div></div><=
div id=3D"m_4169463131358288870m_1851057013599080402m_8110172842132397564DA=
B4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2"><table style=3D"border-top:1px solid rg=
b(211,212,222)"><tbody><tr><td style=3D"width:55px;padding-top:13px"><a hre=
f=3D"https://www.avast.com/sig-email?utm_medium=3Demail&amp;utm_source=3Dli=
nk&amp;utm_campaign=3Dsig-email&amp;utm_content=3Dwebmail" target=3D"_blank=
"><img src=3D"https://s-install.avcdn.net/ipm/preview/icons/icon-envelope-t=
ick-round-orange-animated-no-repeat-v1.gif" alt=3D"" width=3D"46" height=3D=
"29" style=3D"width: 46px; height: 29px;"></a></td><td style=3D"width:470px=
;padding-top:12px;color:rgb(65,66,78);font-size:13px;font-family:Arial,Helv=
etica,sans-serif;line-height:18px">Virus-free.<a href=3D"https://www.avast.=
com/sig-email?utm_medium=3Demail&amp;utm_source=3Dlink&amp;utm_campaign=3Ds=
ig-email&amp;utm_content=3Dwebmail" style=3D"color:rgb(68,83,234)" target=
=3D"_blank">www.avast.com</a></td></tr></tbody></table><a href=3D"#m_416946=
3131358288870_m_1851057013599080402_m_8110172842132397564_DAB4FAD8-2DD7-40B=
B-A1B8-4E2AA1F9FDF2" width=3D"1" height=3D"1"></a></div></div><br><div clas=
s=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Mon, Mar 30, 202=
6 at 11:46=E2=80=AFAM Cyrille Morin &lt;<a href=3D"mailto:cyrille.morin@inr=
ia.fr" target=3D"_blank">[email protected]</a>&gt; wrote:<br></div><bl=
ockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-lef=
t:1px solid rgb(204,204,204);padding-left:1ex"><u></u>

 =20
   =20
 =20
  <div>
    <p>Hi Ziad,</p>
    <p>To give you some feedback, I&#39;ll go out of order:</p>
    <p>3) I believe deciding on the exact library to use is an important
      first step, and is part of the work to be done as it requires time
      to try out the different options. So having that decision as part
      of the gsoc itself is a good thing. It could even be thought of as
      a deliverable</p>
    <p>1) The discussion of pros and cons is good, but the exact choice
      might be dependent on the specificities of the chosen library. For
      instance, ImGUI might be easier to integrate directly into C++
      blocks than Bokeh&#39;s Python</p>
    <p>2) In general, it&#39;s good practice to test as you go. Making all
      the sinks and widgets before starting to test them might leave you
      with nothing working, or having to rewrite everything if you find
      systemic bugs in your code or architecture.</p>
    <p>Expanding on the topic of risks. It could be good to think about,
      and detail where you could have some wriggle room to tackle
      unexpected issues and/or plan B, prioritization in case time runs
      short.</p>
    <div>
     =20
     =20
      <strong>Cyrille MORIN</strong><br>
      <div> <em>Ing=C3=A9nieur SED</em><br>
        <em>=C3=89quipe MARACAS</em></div>
      <div><br>
        <img src=3D"cid:ii_19d3e81708cf8cdc8ae1" alt=3D"Logo Inria" width=
=3D"200" height=3D"59"><br>
        <span style=3D"color:rgb(255,0,0)">Centre Inria de Lyon</span></div=
>
      <div><br>
        Laboratoire CITI<br>
        Campus La Doua - Villeurbanne<br>
        6 avenue des Arts<br>
        F-69621 Villeurbanne</div>
      <div><br>
      </div>
      <div> <a href=3D"https://team.inria.fr/maracas/" target=3D"_blank">ht=
tps://team.inria.fr/maracas/</a><br>
      </div>
    </div>
    <div>Le 27/03/2026 =C3=A0 18:52, Ziad Haithem
      202201027 a =C3=A9crit=C2=A0:<br>
    </div>
    <blockquote type=3D"cite">
     =20
      <div dir=3D"ltr">
        <div>Sorry for the delay in my reply, things took a bit longer
          than i expected</div>
        <div><br>
        </div>
        Thanks for the answers=C2=A0
        <div><br>
        </div>
        <div>I went ahead and looked up some developer tutorials for GR4
          and i think i have a good enough of an understanding now to be
          able to write a good proposal,</div>
        <div><br>
        </div>
        <div>Here is the google doc fo my proposal with the technical
          aspects complete and that&#39;s mainly what i would like to get
          feedback on</div>
        <div><a href=3D"https://docs.google.com/document/d/18-Tik6fIwv6KZVv=
qpIYjX_cKrxYV9c4MihXhG65SPKg/edit?usp=3Dsharing" target=3D"_blank">https://=
docs.google.com/document/d/18-Tik6fIwv6KZVvqpIYjX_cKrxYV9c4MihXhG65SPKg/edi=
t?usp=3Dsharing</a></div>
        <div><br>
        </div>
        <div>Specifically what i would like feedback on is the following</d=
iv>
        <div>1) My main design choice on the core infrastructure and if
          my rationalization behind it is sufficient (I detail 3
          approaches in my proposal and compare them)</div>
        <div>2) I lack quite a bit of experience with QA &amp;
          documentation=C2=A0and so those parts=C2=A0of the proposal may be=
 a bit
          lackluster any feedback on that would definitely help=C2=A0</div>
        <div>3) I have essentially pushed back the question of what
          library for browser=C2=A0plotting will be used (Bokeh, imgui, etc=
)
          to being part of the first week of work, as i feel i wont have
          enough time to do an actual good assessment before the
          proposal deadline, is that okay or do i need to specify the
          library which will be used ?</div>
        <div><br>
        </div>
        <div>Obviously any feedback on anything else is welcome, I am
          sure I have so much to learn !=C2=A0</div>
        <div><br>
        </div>
        <div>Since its a google doc, feedback via comments within the
          document would be easier than email i think, however whatever
          is preferable=C2=A0for you is fine</div>
        <div><br>
        </div>
      </div>
      <br>
      <div class=3D"gmail_quote">
        <div dir=3D"ltr" class=3D"gmail_attr">On Wed, Mar 25, 2026 at
          5:34=E2=80=AFPM Cyrille Morin &lt;<a href=3D"mailto:cyrille.morin=
@inria.fr" target=3D"_blank">[email protected]</a>&gt;
          wrote:<br>
        </div>
        <blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex=
;border-left:1px solid rgb(204,204,204);padding-left:1ex">
          <div>
            <p>Hi Ziad,</p>
            <p>Having a running GR 4.0 with a custom OOT is certainly a
              good start, well done!<br>
              <br>
              I&#39;m definitely not in the best position to give advice on
              GR4 code philosophy as I still need to start playing with
              it before GSoc starts.<br>
              But I believe you&#39;ll find the best and most up to date
              info in the gnuradio4 repo itself, including the readmes
              in the /docs folder, and also the 4.0.0-RC1 tag
              description which covers a lot of the current state</p>
            <p>I mention Bokeh in the project description because it&#39;s
              the dependency we use for the current (GR3) version of the
              remote monitoring system, so we know it can cover the main
              use case.<br>
              But it is far from perfect so we are open to using an
              other library providing that same core use case of <i>remote<=
/i>
              monitoring with plots and interaction with widgets, with
              the added bonus of not requiring anything installed on the
              remote computer.<br>
              So ImGUI, with its many flavours <i>could</i> be an
              interesting option with better performance, nice plots...
              as long as it shows an efficient way for remote operation
              outside of the local browser.<br>
              <br>
              I hope it helps with some of your questions,</p>
            <p>Best</p>
            <div> <strong>Cyrille MORIN</strong><br>
              <div> <em>Ing=C3=A9nieur SED</em><br>
                <em>=C3=89quipe MARACAS</em></div>
              <div><br>
                <img src=3D"cid:ii_19d3e81708cf8cdc8ae1" alt=3D"Logo Inria"=
 width=3D"200" height=3D"59"><br>
                <span style=3D"color:rgb(255,0,0)">Centre Inria de Lyon</sp=
an></div>
              <div><br>
                Laboratoire CITI<br>
                Campus La Doua - Villeurbanne<br>
                6 avenue des Arts<br>
                F-69621 Villeurbanne</div>
              <div><br>
              </div>
              <div> <a href=3D"https://team.inria.fr/maracas/" target=3D"_b=
lank">https://team.inria.fr/maracas/</a><br>
              </div>
            </div>
            <div>Le 24/03/2026 =C3=A0 04:40, Ziad Haithem 202201027 a =C3=
=A9crit=C2=A0:<br>
            </div>
            <blockquote type=3D"cite">
              <div dir=3D"ltr">
                <div dir=3D"ltr">
                  <p>Dear GNU Radio Community,</p>
                  <p>I have=C2=A0decided that my gsoc proposal/project will
                    be on the &quot;BokehGUI in GNU radio 4.0&quot; idea</p=
>
                  <h3>1. Proof of Concept &amp; Progress</h3>
                  <p>To get comfortable with the GR 4.0 , I=E2=80=99ve deve=
loped
                    a small PoC=C2=A0. It uses a signal generator block int=
o
                    a custom OOT module that publishes data to a socket
                    via ZMQ. A Python script then subscribes to that
                    socket and plots the sine wave in the browser in
                    real-time using Bokeh.</p>
                  <p>Main goal is to just show i was able to take
                    something generated by GR4 and get it displayed in
                    the browser=C2=A0</p>
                  <ul>
                    <li>
                      <p><b>Repo:</b> [<a href=3D"https://github.com/ZiadFa=
hmyZewailCity/gr4.0-bokehgui/tree/gettingFamiliarWithDevelopment" target=3D=
"_blank">https://github.com/ZiadFahmyZewailCity/gr4.0-bokehgui/tree/getting=
FamiliarWithDevelopment</a>]</p>
                    </li>
                    <li>
                      <p><b>Video Demo:</b>=C2=A0[<a href=3D"https://drive.=
google.com/file/d/1-5VSE6BerbMY9ruzjn5oQxtQFzTD34lS/view?usp=3Dsharing" tar=
get=3D"_blank">Link to
                          Video</a>]</p>
                    </li>
                  </ul>
                  <p>I&#39;ve also worked through the GR3 beginner and OOT
                    tutorials, and spent time playing with ZMQ/Bokeh to
                    ensure I can handle plotting and the data flow
                    between processes.</p>
                  <h3>2. Seeking Guidance on GR 4.0=C2=A0</h3>
                  <p>While I=E2=80=99m thrilled I got the PoC running, this=
 is
                    my first time working with a codebase of this scale.
                    My main concern is moving from &quot;making it work&quo=
t; to
                    &quot;making it right.&quot; What are some resources th=
at&#39;ll
                    help me design and write code that &quot;fits&quot; wit=
h the
                    design philosophy behind OOT modules for GR4. I feel
                    like this will be very important for my proposal=C2=A0<=
/p>
                  <h3>3. Use of bokeh=C2=A0=C2=A0</h3>
                  <div>I wrote the POC in bokeh and focused on it when
                    experimenting because its what was mentioned in the
                    project description and there are plenty of
                    resources for it. However while researching=C2=A0I foun=
d
                    that in=C2=A0<a href=3D"https://wiki.gnuradio.org/index=
.php?title=3DEuropean_GNU_Radio_Days/2025" style=3D"font-family:sans-serif;=
font-size:14px" target=3D"_blank">European
                      GNU Radio Days</a>=C2=A0in the next generation remote
                    GUI section. &quot;<span style=3D"color:rgb(32,33,34);f=
ont-family:sans-serif;font-size:14px">Imgui&quot;</span><span style=3D"colo=
r:rgb(32,33,34);font-family:sans-serif;font-size:14px">=C2=A0=C2=A0was
                      considered a good candidate=C2=A0to be used for
                      wireless plotting for GNU Radio 4.0. Has the
                      community moved away from this opinion ? is it
                      still present ? Should I write my proposal with
                      only one library in mind or be flexible and have
                      this been decided later on in development=C2=A0?=C2=
=A0=C2=A0</span></div>
                  <h3>4. Why This Project?</h3>
                  <p>I initially looked for something with a bit more
                    DSP and communications concepts. However this
                    project feels important, and I decided to go with
                    something which would have an impact instead of
                    wasting time thinking of a custom project to propose
                    that had me playing with some of the concepts i was
                    most interested=C2=A0in.=C2=A0</p>
                  <p>I am really looking forward to the possibility of
                    contributing to GNU Radio this summer as part of
                    GSOC. Thank you for your time and for any pointers
                    you can provide!</p>
                  <p>cyberspectrum is best spectrum=C2=A0(I think the code
                    word is for the proposal only but one can never be
                    too safe lol)</p>
                  <p>Sincerely,</p>
                  <div>Ziad=C2=A0</div>
                  <span class=3D"gmail_signature_prefix">-- </span><br>
                  <div dir=3D"ltr" class=3D"gmail_signature">
                    <div dir=3D"ltr">
                      <div><font size=3D"1" color=3D"#666666">Ziad Haithem
                          Fahmy</font></div>
                      <div><span style=3D"font-size:x-small"><font color=3D=
"#666666">ID:202201027</font></span></div>
                      <div><span style=3D"font-size:x-small"><font color=3D=
"#666666">=C2=A0</font></span></div>
                      <div><font size=3D"1" color=3D"#666666">Communication=
s
                          and Information Engineering Student</font></div>
                      <div>
                        <p class=3D"MsoNormal" style=3D"margin-bottom:6pt;l=
ine-height:normal"><font size=3D"1" color=3D"#666666"><span style=3D"font-f=
amily:Arial,sans-serif">Zewail
                              City of Science, Technology and Innovation</s=
pan>=C2=A0=C2=A0</font></p>
                        <p class=3D"MsoNormal" style=3D"margin-bottom:6pt;c=
olor:rgb(34,34,34);line-height:normal"><span style=3D"font-family:Arial,san=
s-serif"><font size=3D"1"><a href=3D"https://goo.gl/maps/bbNTX7EMrbZA1Lhu7"=
 style=3D"color:rgb(17,85,204)" target=3D"_blank">Ahmed
                                Zewail Road, October Gardens,
                                Giza=C2=A012578, Egypt</a></font></span></p=
>
                        <p class=3D"MsoNormal" style=3D"margin-bottom:0in;c=
olor:rgb(34,34,34);line-height:normal"><span style=3D"font-family:Arial,san=
s-serif"><a href=3D"http://www.zewailcity.edu.eg/" style=3D"color:rgb(17,85=
,204)" target=3D"_blank"><font size=3D"1">www.zewailcity.edu.eg</font></a><=
/span></p>
                        <p class=3D"MsoNormal" style=3D"margin-bottom:0in;c=
olor:rgb(34,34,34);line-height:normal"><br>
                        </p>
                        <p class=3D"MsoNormal" style=3D"margin-bottom:0in;l=
ine-height:normal"><font size=3D"1" color=3D"#666666">0120 205 7175</font><=
/p>
                        <p class=3D"MsoNormal" style=3D"margin-bottom:0in;l=
ine-height:normal"><font color=3D"#666666"><font size=3D"1">Whatsapp
                              number -=C2=A0</font><span style=3D"font-size=
:x-small">0109 479 1824</span></font></p>
                        <p class=3D"MsoNormal" style=3D"margin-bottom:0in;c=
olor:rgb(34,34,34);line-height:normal"><br>
                        </p>
                        <p class=3D"MsoNormal" style=3D"margin-bottom:0in;c=
olor:rgb(34,34,34);line-height:normal"><br>
                        </p>
                      </div>
                    </div>
                  </div>
                </div>
              </div>
            </blockquote>
          </div>
        </blockquote>
      </div>
    </blockquote>
  </div>
</blockquote></div>
</blockquote></div>
</blockquote></div>

--0000000000008c717a064e54f875--

--0000000000008c717a064e54f876
Content-Type: image/png; name="Inria_signature_mail_200px.png"
Content-Disposition: inline; filename="Inria_signature_mail_200px.png"
Content-Transfer-Encoding: base64
Content-ID: <ii_19d3e81708cf8cdc8ae1>
X-Attachment-Id: ii_19d3e81708cf8cdc8ae1

iVBORw0KGgoAAAANSUhEUgAAAMgAAAA7CAYAAAA+XsUpAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ
bWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdp
bj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6
eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ1IDc5LjE2
MzQ5OSwgMjAxOC8wOC8xMy0xNjo0MDoyMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJo
dHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlw
dGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAv
IiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RS
ZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpD
cmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKE1hY2ludG9zaCkiIHhtcE1NOklu
c3RhbmNlSUQ9InhtcC5paWQ6NDVFRUQzNzlDQjA3MTFFOThEQTNDMkE4RjU0NUEzRTgiIHhtcE1N
OkRvY3VtZW50SUQ9InhtcC5kaWQ6NDVFRUQzN0FDQjA3MTFFOThEQTNDMkE4RjU0NUEzRTgiPiA8
eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0NUVFRDM3N0NCMDcx
MUU5OERBM0MyQThGNTQ1QTNFOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0NUVFRDM3OENC
MDcxMUU5OERBM0MyQThGNTQ1QTNFOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8
L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PjlpLn4AAAh5SURBVHja7F3dceM2EIZu9B5N
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
RK5CYII=
--0000000000008c717a064e54f876--